Sample Puppet Deployment using r10k, dynamic environments and hiera to manage macs. No puppet master needed.
This example uses dayglojesus's 'managedmac' module: https://github.com/dayglojesus/managedmac which is well documented here. http://dayglojesus.github.io/managedmac/
The Hiera data is public here (with scrambled passwords etc): https://github.com/groob/hieradata_public
The environment repo is here: https://github.com/whitby/puppet-environment