rake puppetexpert:create - Puppet Camp Silicon Valley 2014


Published on

Slides for the 'rake puppetexpert:create' presentation at Puppet Camp SiliconValley 2014

Published in: Technology, Spiritual
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

rake puppetexpert:create - Puppet Camp Silicon Valley 2014

  1. 1. rake puppetexpert:create Nathan Valentine Professional Services Engineer - Puppet Labs nathan@puppetlabs.com @nrvale0
  2. 2. Why am I here?
  3. 3. Managing Windows with Puppet?
  4. 4. Spooky action at a distance with MCollective!
  5. 5. Awesome sauce with Puppet + Docker?
  6. 6. Argh! Let me go to my corner and play with my toys!
  7. 7. Let's play a game...
  8. 8. Easy "What is Puppet?" with basic examples clever things others have done with Puppet How to DevOps-ify your organization with Puppet as a core tool
  9. 9. More Difficult Beyond the basics, how do I become a Puppet expert? Tons of resources! What's the progression?
  10. 10. Meta-learning
  11. 11. Meta-learning Deconstruction: "...minimum learnable units, the LEGO blocks..." Selection: "Which 20% of the blocks?" Sequencing: "In what order?" ** shamelessly stolen from Wikipedia and T4HC
  12. 12. Selection and Sequencing are important!
  13. 13. Let's focus on Review of available resources Selection & Sequencing
  14. 14. BTW, this presentation linked from Twitter later today: @nrvale0
  15. 15. Getting Started
  16. 16. The Usual Suspects puppet-users mailing list: http://goo.gl/dgvApa "Whoa, Nelly! That's a lot of email!" #puppet on irc.freenode.net
  17. 17. Puppet Labs Learning Management System http://puppetlabs.com/learn
  18. 18. Puppet Enterprise Learning VM http://info.puppetlabs.com/download-learning-puppet-VM.html
  19. 19. Puppet Enterprise Training http://puppetlabs.com/services/training
  20. 20. Pro Puppet, Second Edition http://goo.gl/SEjW6N
  21. 21. http://ask.puppetlabs.com
  22. 22. http://puppetlabs.com/blog
  23. 23. Twitter: @PuppetLabs
  24. 24. Oh, also...real people in The Real World! PuppetConf 2014 in San Francisco, CA! PuppetCamps ( You must have figured this one out on your own. ;) ) Meetups
  25. 25. Puppet DSL Style
  26. 26. Validate Your Code $ ( cd mymodule && puppet parser validate `find ./ -name '*.pp'` ) very basic sanity check ( brackets, commas, etc) doesn't check for valid attributes for the type
  27. 27. Style Guide Check $ sudo gem install puppet-lint && puppet-lint --with-filename ./mymodule http://puppet-lint.com very basic sanity check ( brackets, commas, quotes, etc ) doesn't check for valid attributes for the type
  28. 28. Puppet Style ProTip Implement logic which rejects submission of Puppet code code to your central git/SVN/etc repositories unless the code passes both 'puppet parser' and puppetlint runs.
  29. 29. Online Puppet Lint puppet-lint As A Service? http://www.puppetlinter.com And did you know it has a GitHub Post-Receive Hook? http://www.puppetlinter.com/github
  30. 30. Roles and Profiles higher and higher levels of abstraction for Puppet code first publicly proposed by Craig Dunn in: http://www.craigdunn.org/2012/05/239/ now taught as part of Puppet Labs training roles composed of profiles profiles composed of component modules (puppetlabs/apache) Let's see some code...
  31. 31. Hiera source Puppet top-scopes and class parameters from multiple backends YAML backend is most popular. Also JSON. other backends allow non-coders to fiddle with data fed to pre-written modules CouchDB, MySQL, LDAP, etc - lots of Hiera backends in the community
  32. 32. Tooling (and retooling)
  33. 33. Git For better or worse (Hg lovers), Git dominates in the Puppet community. GitHub : enough said BitBucket : http://bitbucket.org free private repos 'The Git Book' : http://git-scm.com/book 'Learn Git Branching' : http://pcottle.github.io/learnGitBranching/
  34. 34. New title: "First, learn Vagrant."
  35. 35. http://vagrantup.com
  36. 36. Vagrant Disposable repeatable VMs with: VirtualBox VMWare LXC Docker etc
  37. 37. Let's see some Vagrant magic!
  38. 38. Google these when you get home! librarian-puppet (cool) : https://github.com/rodjek/librarian-puppet r10k (way cool) : https://github.com/adrienthebo/r10k
  39. 39. Google these too! vagrant-pe_build : https://github.com/adrienthebo/vagrant-pe_build vagrant-oscar : https://github.com/adrienthebo/oscar
  40. 40. Thanks for listening! Feed back to nathan@puppetlabs.com