advertisement

Package all the things, from #ihatepackaging to #packaginglove

53 %
47 %
advertisement
Information about Package all the things, from #ihatepackaging to #packaginglove
Technology

Published on October 15, 2014

Author: KrisBuytaert

Source: slideshare.net

Description

Slides as presented at LinuxCon 2014 in Dusseldorf

Automated Software Delivery on Linux,
Continuous Delivery of software on Linux ,

As operations persons we like to have software installed from apt or yum repositories in clean packages.
We want to be able to trace the origin of a file and have smooth upgrade paths.

But distributions make it hard on us, then languages reinvent the wheel, then developers want to ship software in different ways ..

fpm, fpmcookery, omnibus, specfiles to the rescue, or chaos and hairpulls.

This talk will guid you trough the maze of how to deploy software, from different sources in a sane way.
How and when to use different packaging tools that will make your life easier, and how this approach will help you in growing towards a #devops approach
advertisement

1. Package All the things From #packagingsucks to #packaginglove Kris Buytaert @krisbuytaert

2. KKrriiss BBuuyyttaaeerrtt ● II uusseedd ttoo bbee aa DDeevv,, ● TThheenn BBeeccaammee aann OOpp ● OOppeennMMoossiixx RReelleeaassee MMaannaaggeerr && PPaacckkaaggeerr ● CChhiieeff TTrroolllliinngg OOffffiicceerr aanndd OOppeenn SSoouurrccee CCoonnssuullttaanntt @@iinnuuiittss..eeuu ● EEvveerryytthhiinngg iiss aann eeffffiinngg DDNNSS PPrroobblleemm ● BBuuiillddiinngg CClloouuddss ssiinnccee bbeeffoorree tthhee bbooookkssttoorree ● OOrrggaanniissiinngg ttoooo mmaannyy ccoonnffss ,, ##ddeevvooppssddaayyss,, ##llooaaddaayyss,, ...... ● EEvvaannggeelliizziinngg ddeevvooppss

3. WWhhyy ttaallkk aabboouutt PPaacckkaaggiinngg ??

4. ddeevvooppss ==~~ ccllaammss ● CCuullttuurree ● ((LLeeaann)) ● AAuuttoommaattee aallll tthhee tthhiinnggss ...... • BBuuiilldd AAuuttoommaattiioonn • PPaacckkaaggee aallll tthhee tthhiinnggss • TTeesstt AAuuttoommaattiioonn • IIAACC ● MMoonniittoorriinngg ,, MMeettrriiccss ...... ● SShhaarriinngg

5. LLeett''ss ttaallkk aabboouutt PPaacckkaaggiinngg ● WWhhoo aarree yyoouu ?? ● DDoo yyoouu ppaacckkaaggee ?? • PPaacckkaaggiinngg ssooffttwwaarree iinn aa ddiissttrroo ?? • PPaacckkaaggiinngg llaanngguuaaggeess ?? • PPaacckkaaggiinngg iinn aann eenntteerrpprriissee

6. #packagingsucks

7. ##ppaacckkaaggiinnggssuucckkss • RReeaallllyy .... ● MMiissssiinngg uuppssttrreeaamm ● AAnncciieenntt uuppssttrreeaamm ● UUnnnneeeeddeedd ddeeppeennddeenncciieess ● BBrrookkeenn uuppssttrreeaamm ● DDiissttrroo PPoolliicciieess ● ““MMaaxxiimmuumm RRPPMM”” ?? ● PPaacckkaaggiinngg iiss nneeeeddeedd ● DDeeppeennddeenncciieess,, ttoooolliinngg,, rreeppoossiittoorriieess

8. PPaacckkaaggee aallll tthhee tthhiinnggss

9. WWhhyy ooppss lliikkee ttoo ppaacckkaaggee ● PPaacckkaaggeess ggiivvee yyoouu ffeeaattuurreess •CCoonnssiisstteennccyy,, sseeccuurriittyy,, ddeeppeennddeenncciieess ● UUnniiqquueellyy iiddeennttiiffyy wwhheerree ffiilleess ccoommee ffrroomm •PPaacckkaaggee oorr ccffgg--mmggmmtt ● SSoouurrccee rreeppoo nnoott aallwwaayyss aavvaaiillaabbllee •FFiirreewwaallll // CClloouudd eettcc .... ● WWeeiirrdd ddeeppllooyymmeenntt llooccaattiioonnss ,, nnoo eeaassyy aacccceessss ● LLiittttllee oovveerrhheeaadd wwhheenn yyoouu aauuttoommaattee ● CCOONNFFIIGG ddooeess nnoott bbeelloonngg iinn aa ppaacckkaaggee

10. IInn CCoonnttiinnuuoouuss DDeelliivveerryy ● UUnnmmooddiiffiieedd ,, TTeesstteedd aarrttiiffaaccttss ggoo ttrroouugghh aa ppiippeelliinnee.. aapppplliiccaattiioonn ccooddee,, IInnffrraa ccooddee mmeettaaddaattaa tteessttss ● WWee nneeeedd ttoo ppaacckkaaggee tthheessee ssoo tthheeyy bbeeccoommee iimmmmuuttaabbllee

11. DDeeppllooyy oonnccee vvss MMoorree ● SSccaalleeoouutt ● DDeeppllooyy ffrreesshh ppllaattffoorrmm ● NNoo mmaannuuaall aaccttiioonn ttoo ggeett tthhee aarrttiiffaacctt oonn tthhee ppllaattffoorrmm

12. LLaanngguuaaggeess aanndd PPaacckkaaggiinngg

13. CCPPAANN,,RRuubbyyGGeemmss,,PPIIPP,,...... EEvveerryy ssiinnggllee llaanngguuaaggee ttrriieess ttoo ppaacckkaaggee tthheeiirr lliibbrraarriieess,, OOppss ppeeooppllee hhaattee tthhoossee ppaacckkaaggeess AAnndd rreeppaacckkaaggee tthheemm

14. DDeevvss vvss ooppss ccaarree aabboouutt ● GGeettttiinngg tthhee llaatteesstt vveerrssiioonnss wwoorrkkiinngg oonn tthheeiirr ddeevv sseettuupp ● GGeett tthhaatt ffrroomm tthhee iinntteerrnneett ffaasstt ● AA rreepprroodduuccaabbllee ● SShhiippppaabbllee ● AArrttiiffaacctt

15. ““Now we ggoo ttoo lluunncchh wwhhiillee MMaavveenn ddoowwnnllooaaddss tthhee IInntteerrnneett”” SSoommee jjaavvaa ddeevveevveellooppeerr oonn tthhee iinntteerrnneett

16. WWhhyy ddoowwnnllooaadd tthhee iinntteerrnneett ?? ● ----llaatteesstt ● NNoo ssttrriicctt vveerrssiioonniinngg ● DDeeppeennddeenncciieess ● ((rruubbyyggeemmss,, pphhpp ccoommppoosseerr,, ........ )) ● WWhheerree ddoo yyoouu vveerrssiioonn ?? ● ''bbuuiilldd'' oonn pprroodduuccttiioonn ?? ● IItt wwoorrkkss oonn mmyy mmaacchhiinnee !!

17. WWhhaatt ooppss ddoo .... ● BBuuiilldd aa ffuullll ssttaacckk iinn aa cchhrroooott ● DDeeppllooyy rruubbyy iinn jjrruubbyy ● SSooffttwwaarree CCoolllleeccttiioonnss ● LLoooossee mmoorree hhaaiirr ●

18. EEnntteerr OOmmnniibbuuss ● EEaassiillyy ccrreeaattee ffuullll--ssttaacckk iinnssttaalllleerrss ffoorr yyoouurr pprroojjeecctt aaccrroossss aa vvaarriieettyy ooff ppllaattffoorrmmss.. ● DDooeessnn''tt bbrreeaakk rruubbyy vveerrssiioonnss iinn //oopptt//

19. DDiissttrrooss aanndd PPaacckkaaggiinngg

20. LLaauunncchh aallll ddeeaammoonnss ● BBeeccaauussee iinn aa cclluusstteerreedd sseettuupp II wwaanntt tthhee ddaaeemmoonn rruunnnniinngg oonnllyy oonn tthhee nnooddee mmyy CCRRMM tteellllss iitt ttoo.. ● BBeeccaauussee II ffiirrsstt wwaanntt ttoo rreeccoonnffiigguurree iinnnnooddbb eettcc bbeeffoorree yyoouu llaauunncchh iitt ● MMoossttllyy aaiimmeedd aatt ssiinnggllee sseerrvveerr sseettuuppss ::((

21. PPaacckkaaggiinngg UUppssttrreeaamm SSooffttwwaarree ● PPaacckkaaggiinngg DDrruuppaall 66 ● PPaacckkaaggiinngg DDrruuppaall 77 ● IInn bbrrookkeenn llooccaattiioonnss ,, aa wweebbssiittee wwiitthh iitt''ss ccoonntteenntt ddooeess NNOOTT bbeelloonngg iinn //eettcc//ddrruuppaall66

22. SSoommee DDiissttrrooss ● PPaacckkaaggee uunneexxiissttiinngg rreelleeaasseess ● CChhaannggee vveerrssiioonn nnuummbbeerrss ● MMaakkee ddeevveellooppeerrss hhaattee tthhoossee ddiissttrrooss ● TThhee ddiissttrroo tthhaatt oonnccee sshhiippppeedd aann 22..66 KKeerrnneell vveerrssiioonn ooff ooppeennMMoossiixx kknnoowwss II``mm ttaallkkiinngg aabboouutt tthheemm..

23. CCoonnttrriibbuuttiinngg ttoo DDiissttrrooss ?? DDiissttrriibbuuttiioonn ppaacckkaaggiinngg ppoolliicciieess aarree nnoott ddeessiiggnneedd ffoorr ppeeooppllee wwhhoo ppaacckkaaggee ssooffttwwaarree JJoohhnn VViinncceenntt,, oonn hhiiss bblloogg iinn 22001133

24. IIss iitt aa ddiissttrroo''ss jjoobb ttoo sshhiipp aallll wweebbaappppss iinn tthhee wwoorrlldd ??

25. NNoott aallll ppaacckkaaggeess aarree eeqquuaall

26. ffppmm ● YYeess tthhee FF ssttaannddss ffoorr EEffffiinngg ● ##ppaacckkaaggiinnggssuucckkss ● MMiissssiinngg uuppssttrreeaamm ● AAnncciieenntt uuppssttrreeaamm ● UUnnnneeeeddeedd ddeeppeennddeenncciieess ● BBrrookkeenn uuppssttrreeaamm ● DDiissttrroo PPoolliicciieess ● ““MMaaxxiimmuumm RRPPMM”” ?? ● PPaacckkaaggiinngg iiss nneeeeddeedd ● DDeeppeennddeenncciieess,, ttoooolliinngg,, rreeppoossiittoorriieess ● AAnnggeerr ddrriivveenn ddeevveellooppmmeenntt

27. ffppmm

28. ffppmm fpm -t rpm -s dir -n hornetq -v 2.2.5 hornetq Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.nNkVwh + umask 022 + cd /usr/local/build-rpm-hornetq-2.2.5.x86_64.rpm/BUILD + exit 0 Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.yUd4MV + umask 022 + cd /usr/local/build-rpm-hornetq-2.2.5.x86_64.rpm/BUILD + cd /usr/local/build-rpm-hornetq-2.2.5.x86_64.rpm/BUILD + tar -zxf /usr/local/build-rpm-hornetq-2.2.5.x86_64.rpm/data.tar.gz + exit 0 Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.jkpqeA + umask 022 + cd /usr/local/build-rpm-hornetq-2.2.5.x86_64.rpm/BUILD + /usr/lib/rpm/brp-compress + /usr/lib/rpm/brp-strip + /usr/lib/rpm/brp-strip-static-archive + /usr/lib/rpm/brp-strip-comment-note Processing files: hornetq-2.2.5-1.x86_64 Checking for unpackaged file(s): /usr/lib/rpm/check-files /usr/local/build-rpm-hornetq-2.2.5.x86_64.rpm/BUILD Wrote: /usr/local/build-rpm-hornetq-2.2.5.x86_64.rpm/SRPMS/hornetq-2.2.5-1.src.rpm Wrote: /usr/local/build-rpm-hornetq-2.2.5.x86_64.rpm/RPMS/x86_64/hornetq-2.2.5-1.x86_64.rpm Executing(%clean): /bin/sh -e /var/tmp/rpm-tmp.z2UL3B + umask 022 + cd /usr/local/build-rpm-hornetq-2.2.5.x86_64.rpm/BUILD + rm -rf /usr/local/build-rpm-hornetq-2.2.5.x86_64.rpm/BUILD + exit 0 Created /usr/local/hornetq-2.2.5.x86_64.rpm

29. ffppmm iinn aaccttiioonn ● hhttttppss::////ggiitthhuubb..ccoomm//KKrriissBBuuyyttaaeerrtt//bbuuiilldd--ggeemmss ● FFoorrkk,, ppuullll ● JJeennkkiinnss ppuullllss ,, bbuuiillddss ,, ppuusshheess ttoo rreeppoo

30. So wwee ''ssoollvveedd'' ppaacckkaaggiinngg,, nnooww hhooww ttoo sshhiipp ppaacckkaaggeess ??

31. IItt wwoorrkkss,, iitt ddooeessnn''tt wwoorrkk ● IImmaaggiinnee aa wwoorrkkiinngg ppuuppppeett sseettuupp ● AAtt ddiiffffeerreenntt ccuussttoommeerrss ● UUppssttrreeaamm VVeennddoorr rreelleeaasseess nneeww ssooffttwwaarree ● HHaallff ooff tthhee ccuussttoommeerrss ccaallll ccrryyiinngg tthhaatt tthheeiirr ppllaattffoorrmm iiss bbrrookkeenn

32. AA bbrrookkeenn mmccoolllleeccttiivvee ● CCuussttoommeerrss wwiitthh sseellff mmaannaaggeedd ((ppaacckkaaggee)) rreeppooss aarree hhaappppyy ● CCuussttoommeerrss uussiinngg uuppssttrreeaamm rreeppooss aarree iinn ppaaiinn

33. RReeppoossiittoorryy MMaannaaggeemmeenntt

34. RReeppoossiittoorryy MMaannaaggeemmeenntt ● PPuullpp • PPrroo :: MMiirrrroorriinnggLLoovvee • CCoonn :: MMoonnggoo,, SSttaabbiilliittyy,, ..ddeebb,, ffoorrggee ● PPRRMM ● YYuumm RReeppoo SSeerrvveerr bbyy IISS2244

35. VVeerrssiioonn vvss LLaatteesstt ● VVeerrssiioonn yyoouurr rreeppooss ?? eennssuurree ==>> llaatteessttss ● LLaatteesstt yyoouurr eennvviirroonnmmeennttss ?? ● SSttrriicctt vveerrssiioonniinngg iinn ccoonnffiigg ?? EEnnssuurree ==>> ''00..9988..44'' UUssee HHiieerraa

36. BBuutt iitt''ss 22001144,, aanndd wwee hhaavvee ::

37. PPaacckkaaggeess jjuusstt ggoott bbiiggggeerr

38. IImmaaggee BBuuiilldd bbyy ddeevvss,, mmaaiinnttaaiinneedd bbyy nnoobbooddyy If all you know is docker, eevveerryy wwhhaallee llooookkss lliikkee aa pprriivvaattee cclloouudd

39. IInn CCoonnttiinnuuoouuss DDeelliivveerryy ● IImmmmuuttaabbllee ,, TTeesstteedd aarrttiiffaaccttss tthhaatt ggoo ttrroouugghh aa ppiippeelliinnee.. ● GGoollddeenn IImmaaggee ,, • WWhhaatt aabboouutt eennvviirroonnmmeennttaall cchhaannggeess • TThhiiss iiss wwhhaatt wwee ccrreeaatteedd ccffggmmggmmtt ttoooollss ffoorr !! ● MMaakkee ssuurree yyoouu uussee ddoocckkeerr tthhee rriigghhtt wwaayy !!

40. ##ddeevvooppssddaayyss 22001100 OOppeenn SSppaaccee CCoonncclluussiioonnss ● AAllwwaayyss ppaacckkaaggee ssooffttwwaarree YYOOUU ddeeppllooyy • EExxcceeppttiioonnss:: ccooddee tthhaatt cchhaannggeess ffaasstteerr tthhaann yyoouu ccaann ppaacckkaaggee iitt.. ((VVeerryy rraarree)) ● DDoo NNOOTT ppaacckkaaggee CCoonnffiigg FFIILLEESS ,, • UUssee aa ccffggmmggmmtt ttooooll ffoorr tthhiiss ● LLaanngguuaaggeess aarree ssttiillll rreeiinnvveennttiinngg tthhee wwhheeeell ::((

41. CCoonnttaacctt KKrriiss BBuuyyttaaeerrtt KKrriiss..BBuuyyttaaeerrtt@@iinnuuiittss..bbee FFuurrtthheerr RReeaaddiinngg @@kkrriissbbuuyyttaaeerrtt hhttttpp::////wwwwww..kkrriissbbuuyyttaaeerrtt..bbee//bblloogg// hhttttpp::////wwwwww..iinnuuiittss..bbee// IInnuuiittss DDuubbooiissttrraaaatt 5500 22006600 AAnnttwweerrppeenn BBeellggiiuumm 889911..551144..223311 ++3322 447755 996611222211

Add a comment

Related presentations

Presentación que realice en el Evento Nacional de Gobierno Abierto, realizado los ...

In this presentation we will describe our experience developing with a highly dyna...

Presentation to the LITA Forum 7th November 2014 Albuquerque, NM

Un recorrido por los cambios que nos generará el wearabletech en el futuro

Um paralelo entre as novidades & mercado em Wearable Computing e Tecnologias Assis...

Microsoft finally joins the smartwatch and fitness tracker game by introducing the...