Upload
puppet-labs
View
467
Download
2
Tags:
Embed Size (px)
DESCRIPTION
Shipping Puppet Modules As Packages talk by Stefano Zanella from Puppet Camp Paris: 4.8.2014
Citation preview
Shipping ships that ship ships
(aka: shipping Puppet modules as native packages)
Stefano Zanella PuppetCamp Paris 08 Apr 2014
nepas
http://movieposters.2038.net/p/Tirez-Sur-Le-Pianiste_1.jpg
http://cdn.filmschoolrejects.com/images/Rotten-Tomatoes-e1344326498598.jpeg
http://cdn.memegenerator.net/instances/500x/48199068.jpg
@stefano_zanella
github.com/stefanozanella
blog.dontwakethecat.net
http://i.imgur.com/29EcG.jpg
Why?
much movies
such screenz
very BTS. wow
Phase 0black-box provisioning :-(
Phase 1trial-and-error puppetization :-)
puppetmasters
http://cdn.memegenerator.net/instances/500x/48230642.jpg
http://911review.com/errors/pentagon/imgs/f4_1.jpg
What about librarian-puppet?
http://pulpproject.org
…let’s write a gem!
The idea
Puppet code
rake (rpm|deb)
(rpm|deb) package
The rules
1) Be nice to others
The rules
2) Don’t reinvent (too much of) the wheel
Welcome
puppet_module_packaging(Naming anyone? No?? Sure???)
Modulefile +
fpm
(find /etc/puppet/modules/{ssh,rsync,…,ceilometer,openstack}/ -type f -print0 | du --files0-from=- -hc | tail -n 1) 2> /dev/null !7.1M total
(find /etc/puppet/modules/{ssh,rsync,…,ceilometer,openstack}/{manifests,lib,Modulefile,metadata.json} -type f -print0 | du --files0-from=- -hc | tail -n 1) 2> /dev/null !3.8M total
puppet-mod-<author>-<name>
:recursive => true
Live coding
The end?
WANTEDconflicts/replacements
CLI UI error handling metadata.json
Puppetfile support? …
BONUS
r10k
BONUS
r10k(GOTCHA: does NOT resolve dependencies, and so it is UP TO YOU to track them in your Puppetfile)
BONUS
r10khttp://somethingsinistral.net/blog/rethinking-puppet-deployment
!http://garylarizza.com/blog/2014/02/17/puppet-workflow-part-1
Thanks@stefano_zanella
https://github.com/stefanozanella blog.dontwakethecat.net
!https://github.com/stefanozanella/puppet_module_packaging
Q&A