puppet camp paris 2014: shipping puppet modules as packages

37
Shipping ships that ship ships (aka: shipping Puppet modules as native packages) Stefano Zanella PuppetCamp Paris 08 Apr 2014

Upload: puppet-labs

Post on 10-May-2015

466 views

Category:

Technology


2 download

DESCRIPTION

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

TRANSCRIPT

Page 1: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages

Shipping ships that ship ships

(aka: shipping Puppet modules as native packages)

Stefano Zanella PuppetCamp Paris 08 Apr 2014

Page 2: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages
Page 3: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages

nepas

http://movieposters.2038.net/p/Tirez-Sur-Le-Pianiste_1.jpg

Page 4: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages

http://cdn.filmschoolrejects.com/images/Rotten-Tomatoes-e1344326498598.jpeg

Page 5: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages

http://cdn.memegenerator.net/instances/500x/48199068.jpg

Page 6: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages

@stefano_zanella

github.com/stefanozanella

blog.dontwakethecat.net

Page 7: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages

http://i.imgur.com/29EcG.jpg

Page 8: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages

Why?

Page 9: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages
Page 10: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages

much movies

such screenz

very BTS. wow

Page 11: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages

Phase 0black-box provisioning :-(

Page 12: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages

Phase 1trial-and-error puppetization :-)

Page 13: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages

puppetmasters

Page 14: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages

http://cdn.memegenerator.net/instances/500x/48230642.jpg

Page 15: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages

http://911review.com/errors/pentagon/imgs/f4_1.jpg

Page 16: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages

What about librarian-puppet?

Page 17: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages

http://pulpproject.org

Page 18: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages
Page 19: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages
Page 20: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages

…let’s write a gem!

Page 21: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages

The idea

Puppet code

rake (rpm|deb)

(rpm|deb) package

Page 22: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages

The rules

1) Be nice to others

Page 23: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages

The rules

2) Don’t reinvent (too much of) the wheel

Page 24: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages

Welcome

puppet_module_packaging(Naming anyone? No?? Sure???)

Page 25: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages

Modulefile +

fpm

Page 26: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages

(find /etc/puppet/modules/{ssh,rsync,…,ceilometer,openstack}/ -type f -print0 | du --files0-from=- -hc | tail -n 1) 2> /dev/null !7.1M       total

Page 27: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages

(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

Page 28: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages

puppet-mod-<author>-<name>

Page 29: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages

:recursive => true

Page 30: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages

Live coding

Page 31: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages

The end?

Page 32: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages

WANTEDconflicts/replacements

CLI UI error handling metadata.json

Puppetfile support? …

Page 33: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages

BONUS

r10k

Page 34: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages

BONUS

r10k(GOTCHA: does NOT resolve dependencies, and so it is UP TO YOU to track them in your Puppetfile)

Page 35: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages

BONUS

r10khttp://somethingsinistral.net/blog/rethinking-puppet-deployment

!http://garylarizza.com/blog/2014/02/17/puppet-workflow-part-1

Page 36: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages

Thanks@stefano_zanella

https://github.com/stefanozanella blog.dontwakethecat.net

!https://github.com/stefanozanella/puppet_module_packaging

Page 37: Puppet Camp Paris 2014: Shipping Puppet Modules As Packages

Q&A