REX sur l'outilage Continuous Delivery

913 vues

Publié le

REX meetup outillage Continuous Delivery chez TraxAir Music Technologies

Publié dans : Ingénierie
0 commentaire
4 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
913
Sur SlideShare
0
Issues des intégrations
0
Intégrations
7
Actions
Partages
0
Téléchargements
16
Commentaires
0
J’aime
4
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

REX sur l'outilage Continuous Delivery

  1. 1. CONTINUOUS DELIVERY Chez REX Sur l’outillage
  2. 2. Sommaire • Introduction • Github Flow • Continuous Integration • Production • DevBox • Conclusion
  3. 3. Sommaire • Introduction • Github Flow • Continuous Integration • Production • DevBox • Conclusion
  4. 4. Introduction • Qu’est ce que le Continuous Integration ? • Qu’est ce que le Continuous Delivery ? • L’architecture microservice
  5. 5. Continuous Integration
  6. 6. Continuous Delivery
  7. 7. Architecture Microservice Petit Autonome Fait une chose et le fait bien Vision Business
  8. 8. Architecture Microservice Avantages • Possibilités d’utiliser différentes technologies • Résiliente • Scalable • Simple à déployer • Remplacement simple
  9. 9. Les livres
  10. 10. Sommaire • Introduction • Github Flow • Continuous Integration • Production • DevBox • Conclusion
  11. 11. Github Flow • Git flow • Découverte du Github Flow • Présentation du Github Flow • Utilisation du Github Flow chez TraxAir
  12. 12. Github Flow Fork du git flow
  13. 13. Github Flow Comment on a découvert le github flow ?
  14. 14. Github Flow Création de la branche (feature, hotfix …)
  15. 15. Github Flow Commits (développements)
  16. 16. Github Flow Ouverture de la pull request (Release candidate)
  17. 17. Github Flow Revue du code & discution
  18. 18. Github Flow Déploiement de la release
  19. 19. Github Flow Merge de la release
  20. 20. Github Flow Comment est utilisé github chez traxair Phase de déploiment & merge confondue Un kanban
  21. 21. Github Flow Comment est utilisé github chez traxair
  22. 22. Sommaire • Introduction • Github Flow • Continuous Integration • Production • DevBox • Conclusion
  23. 23. Continuous integration • Anatomie d’un container • L’architecture • Le workflow de la CI
  24. 24. L’anatomie d’un container Image de base La configuration L’application Composants Le script de démarrage Paramètres de démarrage
  25. 25. Continuous Integration
  26. 26. Continuous Integration Architecture
  27. 27. Continuous Integration Détection du changement
  28. 28. Continuous Integration Qu’est ce qui doit être testé ? Relation d’ordre topologique sur composants connexes du graphe orienté acyclique
  29. 29. Continuous Integration Les tests Environnement isolé et propre • Test unitaire • Service • End to end Temps moyen d’un test 2-3 minutes
  30. 30. Continuous Integration Les tests Emulation d’un microservice (stub)
  31. 31. Continuous Integration Le build Temps moyen d’un build • Librairie : 1 minute • Microservice : 4 minutes • Image de base : 30 minutes
  32. 32. Continuous Integration
  33. 33. Continuous Integration
  34. 34. Continuous Integration Code Review Qualité de code
  35. 35. Sommaire • Introduction • Github Flow • Continuous Integration • Production • Conclusion
  36. 36. Production L’infrastructure
  37. 37. Production Le déploiement • Swarm • Compose
  38. 38. Production Le monitoring • Datadog, monitoring as a service • ELK, centralisation des logs
  39. 39. Sommaire • Introduction • Github Flow • Continuous Integration • Production • DevBox • Conclusion
  40. 40. DevBox
  41. 41. Devbox Docker Compose Makefile
  42. 42. Devbox Ficher compose Service_X: image: registry.com/Service_X ports: - "443:443" volumes: - Service_X/app:/app - Service_X/Service_X.env:/Service_X.env command: dev
  43. 43. Sommaire • Introduction • Github Flow • Continuous Integration • Production • Conclusion
  44. 44. Conclusion Les difficultés rencontrées • les microservices, c'est bien, mais c'est difficile à mettre en place (et ça nous a ralenti). • L’intégration continue
  45. 45. Conclusion Les difficultés rencontrées • On a fait une itération pour tout le système au lieu de le faire en plusieurs itérations • La communication
  46. 46. Conclusion Ce qu’on prévoit

×