Vous êtes sur la page 1sur 32

Priere de maintenir le silence dans la salle et mettre vos telephones sous silencieux

1
Filière : Réseaux et Systèmes de Télécommunications

Soutenance de stage de fin de cycle

Mise en place d’un Pipeline CI/CD avec Jenkins et Gtilab: Cas de Alfresco 5.2

Présenté par : YAMBA Cheick Bienvenu Moustapha

Professeur de suivi : Directeur de stage :


M. KAFANDO Bila M.KABORE Soilynahou
ISGE-BF ANPTIC
Presentation de l’ANPTIC

Problématique

Généralités

Etude de la solution

Implémentation

Tests
Presentation de Problématique Généralités Etude de la solution Implémentation Tests
l’ANPTIC
Introduction
 Pression pour livrer rapidement des applications de haute qualité

 Gestion de version et réduction des erreurs humaines

 Mise en place d’un pipeline CI/CD

5
Presentation de Problématique Généralités Etude de la solution Implémentation Tests
l’ANPTIC

Présentation de l’ANPTIC

L'ANPTIC a été créée par Décret 2014-055/PRES/PM/MEF/MDENP/MFPTSS du 07 février


2014 dans le but de de faire des TIC un levier de développement au Burkina Faso.

6
Presentation de Problématique Généralités Etude de la solution Implémentation Tests
l’ANPTIC

Présentation de l’ANPTIC
Les objectifs visés par l’agence sont les suivants:

 Innover à travers le développement d’une expertise nationale reconnue basé sur ces
technologies;
 Assurer la mise en œuvre des projets et programme de développement des TIC;

 Rendre opérationnelle la stratégie du gouvernement en matière d’administration


électronique;
 Promouvoir l’utilisation des TIC dans les autres domaines de développement
économique, social, scientifique et culturel.

7
Presentation de Problématique Généralités Etude de la solution Implémentation Tests
l’ANPTIC

Problématique
Automatiser le Déploiement Multi-instance

Optimiser les Mises à Jour Logicielles

Comment automatiser le déploiement de Alfresco 5.2?

 Comment réduire la consommation des ressources? pour sa mise en œuvre ?

8
Présentation de Etude de la Implémentation Test
Problématique Généralités
l’ANPTIC solution
L’integration continue et le déploiement continu(CI/CD)
1. Définition

La CI/CD, ou Continuous Integration/Continuous Delivery (Intégration


Continue/Livraison Continue), est une approche de développement logiciel qui vise
à automatiser et à améliorer le processus de livraison des applications. Elle se
compose de deux concepts interdépendants : l'intégration continue (CI) et la
livraison continue (CD).

9
Présentation de Etude de la Implémentation Test
Problématique Généralités
l’ANPTIC solution
L’integration continue et le déploiement continu(CI/CD)
1.1 L’integration Continue

10
Présentation de Etude de la Implémentation Test
Problématique Généralités
l’ANPTIC solution
L’integration continue et le déploiement continu(CI/CD)
1.2 Le déploiement continu

11
Présentation de Etude des Implémentation Test
Problématique Généralités
l’ANPTIC solutions
Le Pipeline (CI/CD)
Définition

Un pipeline CI/CD est un processus automatisé qui intègre continuellement les modifications de code,
exécute des tests automatisés, et déploie automatiquement les applications, permettant un
développement logiciel rapide, fiable et efficace.

12
Présentation de Etude des Implémentation Test
Problématique Généralités
l’ANPTIC solutions

La conteneurisation
1. Les conteneurs

Les conteneurs sont des environnements d'exécution isolés qui encapsulent une application et toutes ses
dépendances, assurant une portabilité et une cohérence entre les différentes étapes du cycle de vie logiciel, de
la phase de développement à la production.

La conteneurisation est une technique de virtualisation au niveau du système d'exploitation qui permet
d'encapsuler une application et toutes ses dépendances, y compris les bibliothèques, les fichiers de
configuration, et même le runtime, dans un conteneur isolé.

13
Présentation de Etude des Implémentation Test
Problématique Généralités
l’ANPTIC solutions

La conteneurisation
2. Docker

Docker est une plateforme logicielle open source qui facilite la création, le déploiement et la gestion
d'applications dans des conteneurs légers.

14
Présentation de Etude des Implémentation Test
Problématique Généralités
l’ANPTIC solutions

La conteneurisation
3. Avantages et Inconvénients

 Avantages  Inconvénients

 Portabilité et Coherence  Complexité Initialisation


 Rapidité et Légèreté
 Isolation et Sécurité

15
Présentation de Etude de Implémentation Test
Problématique Généralités
l’ANPTIC solution

Choix des outils

16
Présentation de Etude de Implémentation Test
Problématique Généralités
l’ANPTIC solution

Choix des outils


Jenkins est un outil CI/CD très flexible et
extensible

Jenkins permet d'automatiser le processus complet, du


développement initial jusqu'au déploiement. Cela inclut la
compilation du code source, les tests automatisés.

17
Présentation de Etude de Implémentation Test
Problématique Généralités
l’ANPTIC solution

Choix des outils

GitLab est un gestionnaire web de référentiel git incluant un wiki et


des fonctionnalités de suivi de problèmes.

 Contrôle de version

 Gérer les projets

 Compatible avec Jenkins

18
Présentation de Etude de Implémentation Test
Problématique Généralités
l’ANPTIC solution

Architecture de la solution

19
Présentation de Etude des Implémentation Test
Problématique Généralités
l’ANPTIC solutions

1. Conteneuriser Alfresco 5.2

Création du Dockerfile qui spécifiera la base de l'image d'Alfresco

20
21
22
Présentation de Etude des Implémentation Test
Problématique Généralités
l’ANPTIC solutions

Construction du dockerfile

23
Présentation de Etude des Implémentation Test
Problématique Généralités
l’ANPTIC solutions

2. Installation Jenkins

 Création du Dockerfile pour Jenkins

24
25
Présentation de Etude des Implémentation Test
Problématique Généralités
l’ANPTIC solutions

 Construction du dockerfile pour Jenkins

docker build –t jenkins .


docker run -p 9090:9090 -p 50000:50000 mon-jenkins

26
Présentation de Etude des Implémentation Test
Problématique Généralités
l’ANPTIC solutions

3. Configuration de notre pipeline dans Jenkins

1. Télécharger et installer les plugins Pipeline Git et Docker

2. Créer un JOB d'un type spécifique(choisir pipeline)

3. Configurer les informations d'authentification de gitlab sur jenkins

4. Configurer le pipeline et ajouter les référentiels Git pour la connexion Git/Jenkins

27
Présentation de Etude des Implémentation Test
Problématique Généralités
l’ANPTIC solutions

4. Configuration de notre pipeline dans Gitlab

1. Créer un projet Git

2. On clone le ProJet grace a la commande #git clone

3. Effectuer des validations (commits) a l’aide des commandes

#git add .

#git commit

#git push origin

4. Creer le Jenkinsfile

28
29
Présentation de Etude des Implémentation Test
Problématique Généralités
l’ANPTIC solutions

TEST

30
Conclusion

 Expérience enrichissante du milieu professionnel

 Acquisition de notions supplémentaires sur le développement logiciel ainsi


que sur les méthodes DevOps

 Test d’installation et test de fonctionnalités concluants

31
Merci pour votre attention !

32

Vous aimerez peut-être aussi