Slide 1

Slide 1 text

Yves Brissaud DevoxxFR 2025 Pour une autre idée de la CI Sur la machine du développeur avec Dagger

Slide 2

Slide 2 text

𝕏 🦋 Yves Brissaud @_crev_ @yves.brissaud.name

Slide 3

Slide 3 text

Il fut un temps où… Généralement, on n’avait pas de CI On était trop occupé à migrer sous svn • Tests sur la machine de dev • Pas toujours automatisés • Intégration manuelle • Procédures écrites • …

Slide 4

Slide 4 text

Et un jour… Les CI sont arrivées ! • Hudson (2005) • Jenkins (2011) • Travis CI / Circle CI (2011) • Semaphore (2012) • GitLab CI (2015) • GitHub Actions (2018/2019) • …

Slide 5

Slide 5 text

Et un jour… Git ! • Git (2005) • GitHub (2008) • 2011 > SourceForge / Google Code

Slide 6

Slide 6 text

Et un jour… All IN! • Machine de dev → serveur CI • Tests • Builds • Lint • …

Slide 7

Slide 7 text

Et un jour… All IN! 🚙 🚀 • Machine de dev → serveur CI

Slide 8

Slide 8 text

Aujourd'hui Habitudes / culture Pull request Commits Automated CI ⏳

Slide 9

Slide 9 text

Pourquoi une CI ? On souhaite s’assurer que : • Le code respecte les standards • Les tests passent • Les assets sont buildables • Déployable • …

Slide 10

Slide 10 text

Pourquoi une CI ? On souhaite s’assurer que : ✓La tâche a été lancée ✓La tâche a été un succès ✓Le résultat est stable

Slide 11

Slide 11 text

Centralisation +Assurance - Lenteur / feedback loop

Slide 12

Slide 12 text

Un autre monde est-il possible ? Sans pour autant perdre en assurance Pourrait-on arriver au même résultat, aux mêmes garanties, sans CI centralisée ?

Slide 13

Slide 13 text

🚙 🚀 • Machine de dev - serveur CI Aujourd’hui… 🚀 🚙

Slide 14

Slide 14 text

Aujourd’hui… Push and 🙏

Slide 15

Slide 15 text

https://x.com/dhh/status/1785016820740788495

Slide 16

Slide 16 text

Contraintes ✓La tâche a été lancée ✓La tâche a été un succès ✓Le résultat est stable ➡ Enregistrement de l’état ➡ Outil local ➡ Conteneurs Sans bash, makefile, etc Sans Yaml

Slide 17

Slide 17 text

Dagger

Slide 18

Slide 18 text

Dagger Open-source runtime for composable workflows

Slide 19

Slide 19 text

Dagger Tous langages Toutes plate-formes

Slide 20

Slide 20 text

Dagger

Slide 21

Slide 21 text

Dagger Observabilité

Slide 22

Slide 22 text

Dagger

Slide 23

Slide 23 text

Dagger Modularité

Slide 24

Slide 24 text

Dagger LLM

Slide 25

Slide 25 text

Dagger Démo

Slide 26

Slide 26 text

Et ma CI ?

Slide 27

Slide 27 text

Oui… mais https://github.com/basecamp/gh-signoff

Slide 28

Slide 28 text

Dagger Démo

Slide 29

Slide 29 text

https://github.com/dagger/dagger Discord Community call 1 jeudi / 2 Dagger Join the community

Slide 30

Slide 30 text

Merci 🙏 𝕏 🦋 @_crev_ @yves.brissaud.name Session Feedback Slides Discord