====== Computers and Groups From the Command Line ====== I have two scripts that work to create a computer record for "localhost" and one to shift it into a group. first - create the computer record #!/bin/bash sudo dscl /Local/Default -create /Computers/localhost sudo dscl /Local/Default -create /Computers/localhost RealName localhost sudo dscl /Local/Default -create /Computers/localhost GeneratedUUID $(uuidgen) sudo dscl /Local/Default -create /Computers/localhost ENetAddress $(ifconfig en0 |grep ether | awk '{print $2}') sudo dscl /Local/Default -create /Computers/localhost IPAddress 127.0.0.1 Now put it into a computer group (which must already exist, but you can ship an image with all the groups made and empty or build them in with puppet.) #!/bin/bash # Add to the test ComputerGroup thisGUID="$(dscl /Local/Default -read /Computers/localhost GeneratedUID | awk '{ print $2 }')" sudo dscl /Local/Default -merge "/ComputerGroups/test" GroupMembers "$thisGUID" sudo dscl /Local/Default -merge "/ComputerGroups/test" Computers localhost sudo dscl /Local/Default -merge "/ComputerGroups/test" GroupMembership localhost