puppet camp paris 2014: shipping puppet modules as packages

Post on 10-May-2015

466 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

Shipping Puppet Modules As Packages talk by Stefano Zanella from Puppet Camp Paris: 4.8.2014

TRANSCRIPT

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

top related