Hi Jeremy,
First of all - great work on the Puppet agent implementation - it's been something I've been meaning to try out for the last few months, and now that you've got it incorporated with Junos my reasons not to try it (I'm a comms guy) have evaporated!
After a day of hacking through the pitfalls of duplicate package management and invalid SSL certs, I now have a shiny new puppet-controlled EX deployment (The Junos side of the install was pretty smooth by comparison 😉 )
One of the things that struck me after setting this up was that the manifest commands that are available are all things that are very device specific like VLAN assignment and port configuration as opposed to things that better suit a template like DNS, NTP, authentication etc.
I wonder though what yours/Juniper's thoughts are on how much of the Junos vocabulary/syntax you'll be looking to expose in future?
Some sort of code generator that takes in each Junos release schema and spits out the associated puppet module? (Hey a guy can dream!)
After a day of hacking around, I still prefer Junos Space templating over Puppet due to it's easy mental model and GUI, but I think this has real promise for the DevOps guys who already use Puppet for their infrastructure.
Keep it coming!