![Page 1: Debian chez BlaBlaCar · 2020-04-22 · builds avec Jenkins. Gestion des sources avec git « git-import-{orig,dsc} » ou « git merge](https://reader034.vdocuments.mx/reader034/viewer/2022042312/5edad6e709ac2c67fa686411/html5/thumbnails/1.jpg)
chez
![Page 2: Debian chez BlaBlaCar · 2020-04-22 · builds avec Jenkins. Gestion des sources avec git « git-import-{orig,dsc} » ou « git merge](https://reader034.vdocuments.mx/reader034/viewer/2022042312/5edad6e709ac2c67fa686411/html5/thumbnails/2.jpg)
Qui suis-je ?
Architecte système & réseau
@jbfavrehttps://status.jbfavre.org/
http://www.jbfavre.org/
![Page 3: Debian chez BlaBlaCar · 2020-04-22 · builds avec Jenkins. Gestion des sources avec git « git-import-{orig,dsc} » ou « git merge](https://reader034.vdocuments.mx/reader034/viewer/2022042312/5edad6e709ac2c67fa686411/html5/thumbnails/3.jpg)
Programme
●Debian chez BlaBlaCar
●Backports Debian
●Et après ?
![Page 4: Debian chez BlaBlaCar · 2020-04-22 · builds avec Jenkins. Gestion des sources avec git « git-import-{orig,dsc} » ou « git merge](https://reader034.vdocuments.mx/reader034/viewer/2022042312/5edad6e709ac2c67fa686411/html5/thumbnails/4.jpg)
L'infra BlaBlaCar
100 % Debian *
AS public
* sauf un Windows :(
![Page 5: Debian chez BlaBlaCar · 2020-04-22 · builds avec Jenkins. Gestion des sources avec git « git-import-{orig,dsc} » ou « git merge](https://reader034.vdocuments.mx/reader034/viewer/2022042312/5edad6e709ac2c67fa686411/html5/thumbnails/5.jpg)
L'infra BlaBlaCar
« Installation »
●Silencieuse
●Bootstrap +configuration chef
« Et voilà ! »(20 minutes environ)
![Page 6: Debian chez BlaBlaCar · 2020-04-22 · builds avec Jenkins. Gestion des sources avec git « git-import-{orig,dsc} » ou « git merge](https://reader034.vdocuments.mx/reader034/viewer/2022042312/5edad6e709ac2c67fa686411/html5/thumbnails/6.jpg)
Backports (avant)
●Manuel + amd64 only
●Simple :)
●Mais fragile…
![Page 7: Debian chez BlaBlaCar · 2020-04-22 · builds avec Jenkins. Gestion des sources avec git « git-import-{orig,dsc} » ou « git merge](https://reader034.vdocuments.mx/reader034/viewer/2022042312/5edad6e709ac2c67fa686411/html5/thumbnails/7.jpg)
Backports (présent & futur)
●Quelques exemples
● PHP + Extensions PECL● Varnish● Zabbix● TrafficServer● Modules python
![Page 8: Debian chez BlaBlaCar · 2020-04-22 · builds avec Jenkins. Gestion des sources avec git « git-import-{orig,dsc} » ou « git merge](https://reader034.vdocuments.mx/reader034/viewer/2022042312/5edad6e709ac2c67fa686411/html5/thumbnails/8.jpg)
Backports
●dépôt des sources avec git
●dépôt de paquets avec reprepro
●builds avec Jenkins
![Page 9: Debian chez BlaBlaCar · 2020-04-22 · builds avec Jenkins. Gestion des sources avec git « git-import-{orig,dsc} » ou « git merge](https://reader034.vdocuments.mx/reader034/viewer/2022042312/5edad6e709ac2c67fa686411/html5/thumbnails/9.jpg)
Gestion des sources avec git
●« git-import-{orig,dsc} » ou « git merge »
●« quilt »
●« git-dch »
(Merci Raphael Hertzog)http://raphaelhertzog.com/2012/08/08/how-to-use-quilt-to-manage-patches-in-debian-packages/
![Page 10: Debian chez BlaBlaCar · 2020-04-22 · builds avec Jenkins. Gestion des sources avec git « git-import-{orig,dsc} » ou « git merge](https://reader034.vdocuments.mx/reader034/viewer/2022042312/5edad6e709ac2c67fa686411/html5/thumbnails/10.jpg)
Dépôts internes
« reprepro »
●Miroir du dépôt Debian (« security » inclus)
●Dépôt interne BlaBlaCar
(Merci Vincent Bernat)http://vincent.bernat.im/fr/blog/2014-depots-apt-locaux.html
![Page 11: Debian chez BlaBlaCar · 2020-04-22 · builds avec Jenkins. Gestion des sources avec git « git-import-{orig,dsc} » ou « git merge](https://reader034.vdocuments.mx/reader034/viewer/2022042312/5edad6e709ac2c67fa686411/html5/thumbnails/11.jpg)
Industrialisation des builds
« jenkins-debian-glue »
●Vérification des dépendances
●Intégration de « reprepro »
(Merci Silvestre Ledru)
![Page 12: Debian chez BlaBlaCar · 2020-04-22 · builds avec Jenkins. Gestion des sources avec git « git-import-{orig,dsc} » ou « git merge](https://reader034.vdocuments.mx/reader034/viewer/2022042312/5edad6e709ac2c67fa686411/html5/thumbnails/12.jpg)
Industrialisation des builds
Avant
●Pas/peu de maîtrise●100 % manuel●« amd64 » only●Usage interne seulement
Après
●Workflow clair*●upstream, patches => build●« amd64 » + « i386 »●...
* en tout cas pour moi
C'était pas mieux avant :)
![Page 13: Debian chez BlaBlaCar · 2020-04-22 · builds avec Jenkins. Gestion des sources avec git « git-import-{orig,dsc} » ou « git merge](https://reader034.vdocuments.mx/reader034/viewer/2022042312/5edad6e709ac2c67fa686411/html5/thumbnails/13.jpg)
Vers l'infini & au delà
●Progresser
● ouvrir les dépôts
●« non-maintainer » upload
●Debian Maintainer
●…
Looking for ->
![Page 14: Debian chez BlaBlaCar · 2020-04-22 · builds avec Jenkins. Gestion des sources avec git « git-import-{orig,dsc} » ou « git merge](https://reader034.vdocuments.mx/reader034/viewer/2022042312/5edad6e709ac2c67fa686411/html5/thumbnails/14.jpg)
Questions ?