3. La CI ça craint (si, si) !
Photo de Annie Spratt
4. ● Je ne vais (probablement) pas révolutionner votre pratique de la CI/CD 😊
● L’idée est de partager le constat…
● Et d’ébaucher quelques pistes et solutions ensemble…
Disclaimer
6. Moi, quand je sais que j’ai une
nouvelle CI à écrire …
7. Posons le problème
● L’expérience de développement d’une CI n’est pas optimale
○ Des aller-retours inutiles
○ Manque de boucles de feedbacks efficaces
○ Pas de possibilité de tester une modification de CI simplement
○ CI non portable / absence de vrai standard / technos propriétaires
○ Le YAML est frustrant
○ Le fonctionnel transpire beaucoup trop dans ma CI/CD
9. ● Perte de temps
● Perte de €€€
● Impact écologique
● Sentiment de frustration
● Possibilités techniques et fonctionnelles faibles
Posons le problème
12. ● Developer Experience appliquée à la CI
○ Supprimer la frustration
○ Fluidifier le quotidien
○ En utilisant les outils que je connais déjà
○ Testable
○ Observable
○ Portable
Concept CIX
14. Simplifier sa CI
● Utilisez des hooks de pre-commit
● Adopter une approche failfast par défaut
● Votre CI devrait (peut-être) juste lancer des scripts
● I just “make ci”
● Use the containers luke !
● Docker vs Docker-compose vs Kubernetes
15. ● Notions de CI templates
○ Gitlab
○ to-be-continuous.gitlab.io
● Notions de marketplace de CI
○ R2Devops
○ Github Actions marketplace
Simplifier sa CI
17. Simuler la CI en local
● Gitlab : Lancer le runner en local
○ Ressources limitées
○ Multi-arch ?
○ Mettre à jour
○ Variables
○ Quelques issues
● Github: act
○ Idem Gitlab
○ Quelques issues (176)
● Autres
○ ???
18. Drone CI
● kubernetes + CRD ⇒ Portable ✅
● Code source local ⇒ Git ? ❌
● Projet en sommeil ?
25. ● Adoption de GitOps massive
● Simplifie grandement le problème
● Bien souvent ce n’est pas la CD que je veux tester (quoique…)
Mais tu ne parles pas de CD en fait ???