Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Debian usage at BlaBlaCar - Debian Paris meetup

Debian usage at BlaBlaCar - Debian Paris meetup

How we use Debian at BlaBlaCar.
Packaging & backport using continuous integration

Jean Baptiste Favre

June 04, 2014
Tweet

More Decks by Jean Baptiste Favre

Other Decks in Technology

Transcript

  1. chez

    View Slide

  2. Qui suis-je ?
    Architecte système & réseau
    @jbfavre
    https://status.jbfavre.org/
    http://www.jbfavre.org/

    View Slide

  3. Programme
    ●Debian chez BlaBlaCar
    ●Backports Debian
    ●Et après ?

    View Slide

  4. L'infra BlaBlaCar
    100 % Debian *
    AS public
    * sauf un Windows :(

    View Slide

  5. L'infra BlaBlaCar
    « Installation »
    ●Silencieuse
    ●Bootstrap +
    configuration chef
    « Et voilà ! »
    (20 minutes environ)

    View Slide

  6. Backports (avant)
    ●Manuel + amd64 only
    ●Simple :)
    ●Mais fragile…

    View Slide

  7. Backports (présent & futur)
    ●Quelques exemples
    ● PHP + Extensions PECL
    ● Varnish
    ● Zabbix
    ● TrafficServer
    ● Modules python

    View Slide

  8. Backports
    ●dépôt des sources avec git
    ●dépôt de paquets avec reprepro
    ●builds avec Jenkins

    View Slide

  9. 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/

    View Slide

  10. 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

    View Slide

  11. Industrialisation des builds
    « jenkins-debian-glue »
    ●Vérification des dépendances
    ●Intégration de « reprepro »
    (Merci Silvestre Ledru)

    View Slide

  12. 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 :)

    View Slide

  13. Vers l'infini & au delà
    ●Progresser
    ● ouvrir les dépôts
    ●« non-maintainer » upload
    ●Debian Maintainer
    ●…
    Looking for ->

    View Slide

  14. Questions ?

    View Slide