1 of 53

Agilité & CI/CD

Deux mondes faits pour s’entendre

2 of 53

2

3 of 53

Vos interlocuteurs

Basile CAVRIL

Chef de projet et SCRUM Master

Raphaël RAMALLO

Concepteur Développeur

x

3

4 of 53

  • Un rappel de grands principes de l’Agilité�
  • Une introduction à la CI/CD�
  • Un atelier de mise en relation Agilité et CI/CD�
  • Des exemples d’outils et de cas concret.

Ensemble, nous verrons

x

4

5 of 53

x

5

6 of 53

Cycles organisationnels

x

6

7 of 53

Cycle CI/CD

x

7

8 of 53

Cycle CI/CD

x

8

9 of 53

Cycle CI/CD

x

9

10 of 53

Cycle CI/CD

x

10

11 of 53

Cycle CI/CD

x

11

12 of 53

x

Cycle CI/CD

12

13 of 53

x

Cycle CI/CD

13

14 of 53

x

Cycle CI/CD

14

15 of 53

x

Cycle CI/CD

15

16 of 53

x

Cycle CI/CD

16

17 of 53

Définitions

TEST

BUILD

CODE

PLAN

CONTINUOUS INTEGRATION

Planification

Ecriture du code

Compilation et exécution du code

Conformité des tests

RELEASE

DEPLOY

OPERATE

MONITOR

CONTINUOUS DEPLOYMENT

Délivre une version opérationnelle

Déploiement : mise à disposition

Exploitation : disponibilité de l’appli

Collecte de différentes métriques

x

17

18 of 53

Prioriser la satisfaction client

Accepter les changements

Auto organiser et responsabiliser les équipes

Livrer des versions opérationnelles

Assurer une coopération projet / métier

Construire autour de personnes motivées

Mesurer l'opérationnalité du produit

Adopter un rythme constant et soutenable

Encourager la conception et la qualité technique

Favoriser le dialogue direct

S'améliorer continuellement

Privilégier la simplicité 

TEST

BUILD

CODE

PLAN

RELEASE

DEPLOY

OPERATE

MONITOR

Atelier                         /

AGILITÉ

CI

CD

x

18

19 of 53

Définitions

TEST

BUILD

CODE

PLAN

CONTINUOUS INTEGRATION

Planification

Ecriture du code

Compilation et exécution du code

Conformité des tests

RELEASE

DEPLOY

OPERATE

MONITOR

CONTINUOUS DEPLOYMENT

Délivre une version opérationnelle

Déploiement : mise à disposition

Exploitation : disponibilité de l’appli

Collecte de différentes métriques

x

19

20 of 53

Prioriser la satisfaction client

Accepter les changements

Auto organiser et responsabiliser les équipes

Livrer des versions opérationnelles

Assurer une coopération projet / métier

Construire autour de personnes motivées

Mesurer l'opérationnalité du produit

Adopter un rythme constant et soutenable

Encourager la conception et la qualité technique

Favoriser le dialogue direct

S'améliorer continuellement

Privilégier la simplicité 

x

20

21 of 53

Prioriser la satisfaction client

Accepter les changements

Auto organiser et responsabiliser les équipes

Livrer des versions opérationnelles

Assurer une coopération projet / métier

Construire autour de personnes motivées

Mesurer l'opérationnalité du produit

Adopter un rythme constant et soutenable

Encourager la conception et la qualité technique

Favoriser le dialogue direct

S'améliorer continuellement

Privilégier la simplicité 

PLAN

TEST

RELEASE

x

21

22 of 53

Prioriser la satisfaction client

Accepter les changements

Auto organiser et responsabiliser les équipes

Livrer des versions opérationnelles

Assurer une coopération projet / métier

Construire autour de personnes motivées

Mesurer l'opérationnalité du produit

Adopter un rythme constant et soutenable

Encourager la conception et la qualité technique

Favoriser le dialogue direct

S'améliorer continuellement

Privilégier la simplicité 

PLAN

TEST

RELEASE

MONITOR

PLAN

TEST

RELEASE

x

22

23 of 53

Prioriser la satisfaction client

Accepter les changements

Auto organiser et responsabiliser les équipes

Livrer des versions opérationnelles

Assurer une coopération projet / métier

Construire autour de personnes motivées

Mesurer l'opérationnalité du produit

Adopter un rythme constant et soutenable

Encourager la conception et la qualité technique

Favoriser le dialogue direct

S'améliorer continuellement

Privilégier la simplicité 

PLAN

TEST

RELEASE

MONITOR

PLAN

TEST

RELEASE

PLAN

TEST

MONITOR

x

23

24 of 53

Prioriser la satisfaction client

Accepter les changements

Auto organiser et responsabiliser les équipes

Livrer des versions opérationnelles

Assurer une coopération projet / métier

Construire autour de personnes motivées

Mesurer l'opérationnalité du produit

Adopter un rythme constant et soutenable

Encourager la conception et la qualité technique

Favoriser le dialogue direct

S'améliorer continuellement

Privilégier la simplicité 

PLAN

TEST

RELEASE

MONITOR

PLAN

TEST

RELEASE

PLAN

TEST

MONITOR

MONITOR

PLAN

TEST

DEPLOY

x

24

25 of 53

Prioriser la satisfaction client

Accepter les changements

Auto organiser et responsabiliser les équipes

Livrer des versions opérationnelles

Assurer une coopération projet / métier

Construire autour de personnes motivées

Mesurer l'opérationnalité du produit

Adopter un rythme constant et soutenable

Encourager la conception et la qualité technique

Favoriser le dialogue direct

S'améliorer continuellement

Privilégier la simplicité 

PLAN

TEST

RELEASE

MONITOR

PLAN

TEST

RELEASE

PLAN

TEST

MONITOR

MONITOR

PLAN

TEST

DEPLOY

MONITOR

PLAN

RELEASE

x

25

26 of 53

Encourager la conception et la qualité technique

Prioriser la satisfaction client

Accepter les changements

Auto organiser et responsabiliser les équipes

Livrer des versions opérationnelles

Assurer une coopération projet / métier

Construire autour de personnes motivées

Mesurer l'opérationnalité du produit

Adopter un rythme constant et soutenable

Encourager la conception et la qualité technique

Favoriser le dialogue direct

S'améliorer continuellement

Privilégier la simplicité 

PLAN

TEST

RELEASE

MONITOR

PLAN

TEST

RELEASE

PLAN

TEST

MONITOR

MONITOR

PLAN

TEST

DEPLOY

MONITOR

PLAN

RELEASE

PLAN

CODE

RELEASE

x

26

27 of 53

Prioriser la satisfaction client

Accepter les changements

Auto organiser et responsabiliser les équipes

Livrer des versions opérationnelles

Assurer une coopération projet / métier

Construire autour de personnes motivées

Mesurer l'opérationnalité du produit

Adopter un rythme constant et soutenable

Encourager la conception et la qualité technique

Favoriser le dialogue direct

S'améliorer continuellement

Privilégier la simplicité 

PLAN

TEST

RELEASE

MONITOR

PLAN

TEST

RELEASE

PLAN

TEST

MONITOR

MONITOR

PLAN

TEST

DEPLOY

MONITOR

PLAN

RELEASE

PLAN

CODE

RELEASE

MONITOR

BUILD

TEST

OPERATE

x

27

28 of 53

Prioriser la satisfaction client

Accepter les changements

Auto organiser et responsabiliser les équipes

Livrer des versions opérationnelles

Assurer une coopération projet / métier

Construire autour de personnes motivées

Mesurer l'opérationnalité du produit

Adopter un rythme constant et soutenable

Encourager la conception et la qualité technique

Favoriser le dialogue direct

S'améliorer continuellement

Privilégier la simplicité 

PLAN

TEST

RELEASE

MONITOR

PLAN

TEST

RELEASE

PLAN

TEST

MONITOR

MONITOR

PLAN

TEST

DEPLOY

MONITOR

PLAN

RELEASE

PLAN

CODE

RELEASE

MONITOR

BUILD

TEST

OPERATE

PLAN

x

28

29 of 53

Prioriser la satisfaction client

Accepter les changements

Auto organiser et responsabiliser les équipes

Livrer des versions opérationnelles

Assurer une coopération projet / métier

Construire autour de personnes motivées

Mesurer l'opérationnalité du produit

Adopter un rythme constant et soutenable

Encourager la conception et la qualité technique

Favoriser le dialogue direct

S'améliorer continuellement

Privilégier la simplicité 

PLAN

TEST

RELEASE

MONITOR

PLAN

TEST

RELEASE

PLAN

TEST

MONITOR

MONITOR

PLAN

TEST

DEPLOY

MONITOR

PLAN

RELEASE

PLAN

CODE

RELEASE

MONITOR

BUILD

TEST

OPERATE

PLAN

PLAN

TEST

MONITOR

CODE

x

29

30 of 53

Prioriser la satisfaction client

Accepter les changements

Auto organiser et responsabiliser les équipes

Livrer des versions opérationnelles

Assurer une coopération projet / métier

Construire autour de personnes motivées

Mesurer l'opérationnalité du produit

Adopter un rythme constant et soutenable

Encourager la conception et la qualité technique

Favoriser le dialogue direct

S'améliorer continuellement

Privilégier la simplicité 

PLAN

TEST

RELEASE

MONITOR

PLAN

TEST

RELEASE

PLAN

TEST

MONITOR

MONITOR

PLAN

TEST

DEPLOY

MONITOR

PLAN

RELEASE

PLAN

CODE

RELEASE

MONITOR

BUILD

TEST

OPERATE

PLAN

PLAN

TEST

MONITOR

CODE

MONITOR

PLAN

RELEASE

x

30

31 of 53

Prioriser la satisfaction client

Accepter les changements

Auto organiser et responsabiliser les équipes

Livrer des versions opérationnelles

Assurer une coopération projet / métier

Construire autour de personnes motivées

Mesurer l'opérationnalité du produit

Adopter un rythme constant et soutenable

Encourager la conception et la qualité technique

Favoriser le dialogue direct

S'améliorer continuellement

Privilégier la simplicité 

PLAN

TEST

RELEASE

MONITOR

PLAN

TEST

RELEASE

PLAN

TEST

MONITOR

MONITOR

PLAN

TEST

DEPLOY

MONITOR

PLAN

RELEASE

PLAN

CODE

RELEASE

MONITOR

BUILD

TEST

OPERATE

PLAN

PLAN

TEST

MONITOR

CODE

MONITOR

PLAN

RELEASE

PLAN

TEST

MONITOR

x

31

32 of 53

Prioriser la satisfaction client

Accepter les changements

Auto organiser et responsabiliser les équipes

Livrer des versions opérationnelles

Assurer une coopération projet / métier

Construire autour de personnes motivées

Mesurer l'opérationnalité du produit

Adopter un rythme constant et soutenable

Encourager la conception et la qualité technique

Favoriser le dialogue direct

S'améliorer continuellement

Privilégier la simplicité 

PLAN

TEST

RELEASE

MONITOR

PLAN

TEST

RELEASE

PLAN

TEST

MONITOR

MONITOR

PLAN

TEST

DEPLOY

MONITOR

PLAN

RELEASE

PLAN

CODE

RELEASE

MONITOR

BUILD

TEST

OPERATE

PLAN

PLAN

TEST

MONITOR

CODE

MONITOR

PLAN

RELEASE

PLAN

TEST

MONITOR

PLAN

BUILD

RELEASE

x

32

33 of 53

Prioriser la satisfaction client

Accepter les changements

Auto organiser et responsabiliser les équipes

Livrer des versions opérationnelles

Assurer une coopération projet / métier

Construire autour de personnes motivées

Mesurer l'opérationnalité du produit

Adopter un rythme constant et soutenable

Encourager la conception et la qualité technique

Favoriser le dialogue direct

S'améliorer continuellement

Privilégier la simplicité 

PLAN

TEST

RELEASE

MONITOR

PLAN

TEST

RELEASE

PLAN

TEST

MONITOR

MONITOR

PLAN

TEST

DEPLOY

MONITOR

PLAN

RELEASE

PLAN

CODE

RELEASE

MONITOR

BUILD

TEST

OPERATE

PLAN

PLAN

TEST

MONITOR

CODE

MONITOR

PLAN

RELEASE

PLAN

TEST

MONITOR

PLAN

BUILD

RELEASE

x

Ceci n’est pas la vérité vraie, unique et inaltérable, mais une proposition des auteurs du document par rapport à leurs différentes expériences

33

33

34 of 53

Outils CI/CD

x

34

35 of 53

Outils fréquemment utilisés en entreprise

x

35

36 of 53

Cas concret

PLAN

x

36

37 of 53

Cas concret

CODE

PLAN

x

37

38 of 53

Cas concret

TEST

BUILD

PLAN

RELEASE

x

CODE

38

39 of 53

Cas concret

TEST

BUILD

RELEASE

x

39

40 of 53

Cas concret

TEST

BUILD

RELEASE

DEPLOY

x

40

41 of 53

Cas concret

TEST

BUILD

RELEASE

DEPLOY

OPERATE

x

41

42 of 53

Cas concret

TEST

BUILD

RELEASE

DEPLOY

OPERATE

MONITOR

x

42

43 of 53

Complémentarité

Fluidité

Adaptabilité

AGILITÉ

/

CI

CD

x

43

44 of 53

Pour satisfaire votre curiosité :

  • Initiation avec Gitlab : GitLab (pratique) (en Anglais)�
  • Explications avec mise en liens d’outils (Jenkins, Linux) : RedHat (théorie + pratique)�
  • Le test automatisé expliqué par JetBrain (théorie) �
  • Le monitoring et l’observation : par Codilime (théorie) (en Anglais)

x

44

45 of 53

Merci de votre attention et de votre participation

x

45

46 of 53

Prioriser la satisfaction client

Accepter les changements

Auto organiser et responsabiliser les équipes

Livrer des versions opérationnelles

Principes Agiles

TEST

BUILD

CODE

PLAN

RELEASE

DEPLOY

OPERATE

MONITOR

4 étapes CI/CD maximum par principe Agile

x

46

47 of 53

Assurer une coopération projet / métier

Construire autour de personnes motivées

Auto organiser et responsabiliser les équipes

Livrer des versions opérationnelles

Principes Agiles

TEST

BUILD

CODE

PLAN

RELEASE

DEPLOY

OPERATE

MONITOR

4 étapes CI/CD maximum par principe Agile

x

47

48 of 53

Assurer une coopération projet / métier

Construire autour de personnes motivées

Mesurer l’opérationnalité du produit

Adopter un rythme constant et soutenable

Principes Agiles

TEST

BUILD

CODE

PLAN

RELEASE

DEPLOY

OPERATE

MONITOR

4 étapes CI/CD maximum par principe Agile

x

48

49 of 53

Encourager la conception et la qualité technique

Favoriser le dialogue direct

S’améliorer continuellement

Privilégier la simplicité

Principes Agiles

TEST

BUILD

CODE

PLAN

RELEASE

DEPLOY

OPERATE

MONITOR

4 étapes CI/CD maximum par principe Agile

x

49

50 of 53

Encourager la conception et la qualité technique

Favoriser le dialogue direct

Mesurer l’opérationnalité du produit

Adopter un rythme constant et soutenable

Principes Agiles

TEST

BUILD

CODE

PLAN

RELEASE

DEPLOY

OPERATE

MONITOR

4 étapes CI/CD maximum par principe Agile

x

50

51 of 53

Prioriser la satisfaction client

Accepter les changements

S’améliorer continuellement

Privilégier la simplicité

Principes Agiles

TEST

BUILD

CODE

PLAN

RELEASE

DEPLOY

OPERATE

MONITOR

4 étapes CI/CD maximum par principe Agile

x

51

52 of 53

Définitions

TEST

BUILD

CODE

PLAN

CONTINUOUS INTEGRATION

Planification

Ecriture du code

Compilation et exécution du code

Conformité des tests

RELEASE

DEPLOY

OPERATE

MONITOR

CONTINUOUS DEPLOYMENT

Délivre une version opérationnelle

Déploiement : mise à disposition

Exploitation : disponibilité de l’appli

Collecte de différentes métriques

x

53 of 53

Statistiques de choix organisationnels

Approche organisationnelle

Pourcentage

Prédictive

44%

Agile

30%

Hybride

23%

Autre

3%

x

53