SlideShare a Scribd company logo
1 of 80
Continuous Integration Tutorial

Made by
Hamouda Ahmed
Contents
●

1. Introduction

●

2. Git (Ubunto 12.04 LTS)

●

3. Tomcat6

●

4. Jenkins
–
–

4.2 Ajout du plugin Git

–

4.3 Création d'un nouveau job

–

4.4 Ajout du plugin Deploy

–
●

4.1 Installation depuis le War

4.4 Configuration du Job GameOfLife pour déploiement

FAQ

25.12.13

Your name here (insert->page number)

2
1. Introduction: Plateforme de travail
Ubunto + Gestionnaire de bureau XFCE4

25.12.13

Your name here (insert->page number)

3
1. Introduction: Plateforme de travail
Ubunto + Gestionnaire de bureau XFCE4

25.12.13

Your name here (insert->page number)

4
1. Introduction: Plateforme de travail
Le projet game-of-life qu'on va utiliser tout au long de ce tutoriel disponible à partir de ce lien:
https://github.com/wakaleo/game-of-life

25.12.13

Your name here (insert->page number)

5
1. Introduction: Plateforme de travail
CentOS installé sur une machine virtuelle Qemu

25.12.13

Your name here (insert->page number)

6
1. Introduction: Plateforme de travail
Pour que la VM CentOS soit disponible en ssh pour jenkins plus tard il faut configurer l'accès
comme suit:
Hostfwd: forward tcp port 2222 from host to port 22 on guest

Ou bien : -redir tcp:2222::22

25.12.13

Your name here (insert->page number)

7
1. Introduction: Plateforme de travail
J'ai crée un script à partir de la commande du slide précédent:

25.12.13

Your name here (insert->page number)

8
1. Introduction: Plateforme de travail

25.12.13

Your name here (insert->page number)

9
1. Introduction: Plateforme de travail

25.12.13

Your name here (insert->page number)

10
1. Introduction: Plateforme de travail

25.12.13

Your name here (insert->page number)

11
2. Git
Initialisation du repos : git init chemin_du_repo
Ajout des fichiers du repos : git add chemin_du_repo/*
Pour que le repo soit disponible pour tout les utilisateurs de git, il faut faire un commit:
git commit -m “commentaire”

25.12.13

Your name here (insert->page number)

12
2. Git

25.12.13

Your name here (insert->page number)

13
2. Git

25.12.13

Your name here (insert->page number)

14
2. Git

25.12.13

Your name here (insert->page number)

15
2. Git
Si vous préférrer l'interface graphique, vous pouvez installé gitk sur ubuntu:

25.12.13

Your name here (insert->page number)

16
2. Git

25.12.13

Your name here (insert->page number)

17
2. Git

25.12.13

Your name here (insert->page number)

18
2. Git

25.12.13

Your name here (insert->page number)

19
2. Git

25.12.13

Your name here (insert->page number)

20
2. Tomcat6
1. Vérifier si tomcat est déjà installé ou non,
généralement après une installation CentOS il est déjà installé

2. Si non installé, en mode root faite l'installation avec yum

25.12.13

Your name here (insert->page number)

21
2. Tomcat6
3.Vérifier l'accès à la page Web de Tomcat (Initialement ça ne marche que pour localhost)

25.12.13

Your name here (insert->page number)

22
2. Tomcat6
4.Activer la résolution des noms d'hôtes en activant l'option resolve hosts (optionnel)

5.Maintenant on peut y accéder à traver l'@Ip de la machine

25.12.13

Your name here (insert->page number)

23
2. Tomcat6
6.Activer l'accès pour l'interface d'administration de tomcat6,
en ajoutant un utilisateur avec le rôle manager

25.12.13

Your name here (insert->page number)

24
2. Tomcat6
7.Accèder à page d'administration de tomcat6: http://localhost:8080/manager

25.12.13

Your name here (insert->page number)

25
2. Tomcat6
7.Maintenant on peut administrer tomcat6

25.12.13

Your name here (insert->page number)

26
3. Tomcat6

25.12.13

Your name here (insert->page number)

27
4.Jenkins

25.12.13

Your name here (insert->page number)

28
4.1 Installation depuis le War
1. Télécharger la dernière version du war sur : http://jenkins-ci.org

25.12.13

Your name here (insert->page number)

29
4.1 Installation depuis le War
2. Déployer le .war depuis Tomcat Manager:

25.12.13

Your name here (insert->page number)

30
4.1 Installation depuis le War
3. Configurer le répertoire de Jenkins dans /etc/tomcat6/tomcat.conf

25.12.13

Your name here (insert->page number)

31
4.1 Installation depuis le War
4. Configurer le répertoire de Jenkins dans /etc/tomcat6/context.xml

25.12.13

Your name here (insert->page number)

32
4.1 Installation depuis le War
5. Vérifier que tomcat a les droits nécessaires sur le dossier JENKINS_HOME cad /usr/jenkins

25.12.13

Your name here (insert->page number)

33
4.1 Installation depuis le War
5.bis: Sinon exécuter la commande suivante :

25.12.13

Your name here (insert->page number)

34
4.1 Installation depuis le War
6. Jenkins est maintenant prêt à l'utilisation:

25.12.13

Your name here (insert->page number)

35
4.1 Installation depuis le War
6. Jenkins est maintenant prêt à l'utilisation:

25.12.13

Your name here (insert->page number)

36
4.1 Installation depuis le War

25.12.13

Your name here (insert->page number)

37
4.2 Installation du Git Plugin

25.12.13

Your name here (insert->page number)

38
4.2 Installation du Git Plugin

25.12.13

Your name here (insert->page number)

39
4.3 Création d'nouveau Job

25.12.13

Your name here (insert->page number)

40
4.3 Création d'nouveau Job

25.12.13

Your name here (insert->page number)

41
4.3 Création d'nouveau Job
Afin d'accèder au repo git sur la machine hôte, on doit configurer la machine guest (CentOS)
exécutant Tomcat, afin qu'elle puisse se connecter automatiquement sur ssh à la machine hôte.
Puisque tomcat est l'utilisateur de Tomcat6, on doit configurer le jeu de clé pour cette utilisateur.
Pour ce faire, on procède comme suit:
1. Création du dossier .ssh sous le répertoire home (/usr/share/tomcat6) de l'utilisateur tomcat
Tout en lui donnant les priviliège de lecture/écriture:

25.12.13

Your name here (insert->page number)

42
4.3 Création d'nouveau Job

25.12.13

Your name here (insert->page number)

43
4.3 Création d'nouveau Job
2. Se connecter en tant que l'utilisateur tomcat, créer le jeu de clé et les copier vers la machine hôte
qui héberge le serveur git :

25.12.13

Your name here (insert->page number)

44
4.3 Création d'nouveau Job

25.12.13

Your name here (insert->page number)

45
4.3 Création d'nouveau Job

25.12.13

Your name here (insert->page number)

46
4.3 Création d'nouveau Job
Pour compiler le projet on a besoin du jdk-devel, on doit l'installer:

25.12.13

Your name here (insert->page number)

47
4.3 Création d'nouveau Job

25.12.13

Your name here (insert->page number)

48
4.3 Création d'nouveau Job
Configurer le projet pour compiler le projet pour jdk adéquat:

25.12.13

Your name here (insert->page number)

49
4.3 Création d'nouveau Job
Configurer le projet pour compiler le projet pour jdk adéquat:

25.12.13

Your name here (insert->page number)

50
4.3 Création d'nouveau Job
Configurer le projet pour utiliser maven (l'installation se fera automtiquement pendant le premier build):

25.12.13

Your name here (insert->page number)

51
4.3 Création d'nouveau Job

25.12.13

Your name here (insert->page number)

52
4.3 Création d'nouveau Job

25.12.13

Your name here (insert->page number)

53
4.3 Création d'nouveau Job

25.12.13

Your name here (insert->page number)

54
4.3 Création d'nouveau Job

25.12.13

Your name here (insert->page number)

55
4.3 Création d'nouveau Job
Jenkins ne peut trouver le répertoire .m2, il génère ainsi une erreur:

25.12.13

Your name here (insert->page number)

56
4.3 Création d'nouveau Job
Pour remédier à cette erreur il suffit de créer le dossier .m2 et donner les privilèges nécessaire
À l'utilisateur tomcat puisqu'il est le conteneur de l'appilication Jenkins qui s'éxécute sous ses
Droits d'accès

25.12.13

Your name here (insert->page number)

57
4.3 Création d'nouveau Job
Une autre erreur de même type pour le dossier .jenkins:

25.12.13

Your name here (insert->page number)

58
4.3 Création d'nouveau Job

25.12.13

Your name here (insert->page number)

59
4.3 Création d'nouveau Job

25.12.13

Your name here (insert->page number)

60
4.3 Création d'nouveau Job

25.12.13

Your name here (insert->page number)

61
4.3 Création d'nouveau Job

25.12.13

Your name here (insert->page number)

62
4.3 Création d'nouveau Job

25.12.13

Your name here (insert->page number)

63
4.3 Création d'nouveau Job

25.12.13

Your name here (insert->page number)

64
4.4 Ajout du plugin de déploiement

25.12.13

Your name here (insert->page number)

65
4.4 Ajout du plugin de déploiement

25.12.13

Your name here (insert->page number)

66
4.4 Ajout du plugin de déploiement

25.12.13

Your name here (insert->page number)

67
4.4 Ajout du plugin de déploiement

25.12.13

Your name here (insert->page number)

68
4.4 Ajout du plugin de déploiement

25.12.13

Your name here (insert->page number)

69
4.4 Configuration du déploiement automatique

25.12.13

Your name here (insert->page number)

70
4.4 Configuration du déploiement automatique

25.12.13

Your name here (insert->page number)

71
4.4 Configuration du déploiement automatique

25.12.13

Your name here (insert->page number)

72
4.4 Configuration du déploiement automatique

25.12.13

Your name here (insert->page number)

73
4.4 Configuration du déploiement automatique
Le jeu a été déployé sur tomcat et est accessible depuis l'interface d'administration des webapps
De Tomcat http://localhost:8080/manager/

25.12.13

Your name here (insert->page number)

74
4.4 Configuration du déploiement automatique
Maintenant on peut y jouer !

25.12.13

Your name here (insert->page number)

75
4.4 Configuration du déploiement automatique

25.12.13

Your name here (insert->page number)

76
4.4 Configuration du déploiement automatique

25.12.13

Your name here (insert->page number)

77
SUCCESS

25.12.13

Your name here (insert->page number)

78
FAQ

25.12.13

Your name here (insert->page number)

79
FAQ
Si vous avez des remarques ou bien des conseils sur les configs n'hésitez pas à me
contacter sur dimmumeister@gmail.com pour que je les prennent en considération
et met à jour ce tutorial. Merci d'avance :)

25.12.13

Your name here (insert->page number)

80

More Related Content

What's hot

Git utilisation quotidienne
Git   utilisation quotidienneGit   utilisation quotidienne
Git utilisation quotidienneSylvain Witmeyer
 
Déploiements avec Docker
Déploiements avec DockerDéploiements avec Docker
Déploiements avec DockerLuis Lopez
 
DevOps avec Ansible et Docker
DevOps avec Ansible et DockerDevOps avec Ansible et Docker
DevOps avec Ansible et DockerStephane Manciot
 
Oxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide Workshop #4 - Docker, des tours dans le petit bassinOxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide Workshop #4 - Docker, des tours dans le petit bassinLudovic Piot
 
Infra as Code, choisissez vous la pilule rouge ou la pilule bleue - Devoxx 2016
Infra as Code, choisissez vous la pilule rouge ou la pilule bleue - Devoxx 2016Infra as Code, choisissez vous la pilule rouge ou la pilule bleue - Devoxx 2016
Infra as Code, choisissez vous la pilule rouge ou la pilule bleue - Devoxx 2016Fabien Arcellier
 
Git pour les (pas si) nuls
Git pour les (pas si) nulsGit pour les (pas si) nuls
Git pour les (pas si) nulsMalk Zameth
 
Découvrir et utiliser Git : le logiciel de gestion de versions décentralisé
Découvrir et utiliser Git : le logiciel de gestion de versions décentraliséDécouvrir et utiliser Git : le logiciel de gestion de versions décentralisé
Découvrir et utiliser Git : le logiciel de gestion de versions décentraliséECAM Brussels Engineering School
 
Introduction à Docker et Gaudi
Introduction à Docker et GaudiIntroduction à Docker et Gaudi
Introduction à Docker et GaudiEmmanuel Quentin
 
Présentation Git & GitHub
Présentation Git & GitHubPrésentation Git & GitHub
Présentation Git & GitHubThibault Vlacich
 
Docker : quels enjeux pour le stockage et réseau ? Paris Open Source Summit ...
Docker : quels enjeux pour le stockage et réseau ? Paris Open Source Summit ...Docker : quels enjeux pour le stockage et réseau ? Paris Open Source Summit ...
Docker : quels enjeux pour le stockage et réseau ? Paris Open Source Summit ...Jérôme Petazzoni
 
Codons notre infrastructure
Codons notre infrastructureCodons notre infrastructure
Codons notre infrastructurecontinuousphp
 
Retour d'expérience Docker: Puissance et simplicité de VSTS, déploiement sur ...
Retour d'expérience Docker: Puissance et simplicité de VSTS, déploiement sur ...Retour d'expérience Docker: Puissance et simplicité de VSTS, déploiement sur ...
Retour d'expérience Docker: Puissance et simplicité de VSTS, déploiement sur ...Cédric Leblond
 
Présentation de git
Présentation de gitPrésentation de git
Présentation de gitJulien Blin
 
Docker en Production (Docker Paris)
Docker en Production (Docker Paris)Docker en Production (Docker Paris)
Docker en Production (Docker Paris)Jérôme Petazzoni
 
Migration d'une base de code subversion vers git
Migration d'une base de code subversion vers gitMigration d'une base de code subversion vers git
Migration d'une base de code subversion vers gitGeoffrey Bachelet
 
Introduction à Docker et utilisation en production /Digital apéro Besançon [1...
Introduction à Docker et utilisation en production /Digital apéro Besançon [1...Introduction à Docker et utilisation en production /Digital apéro Besançon [1...
Introduction à Docker et utilisation en production /Digital apéro Besançon [1...Silicon Comté
 

What's hot (20)

Git utilisation quotidienne
Git   utilisation quotidienneGit   utilisation quotidienne
Git utilisation quotidienne
 
Déploiements avec Docker
Déploiements avec DockerDéploiements avec Docker
Déploiements avec Docker
 
DevOps avec Ansible et Docker
DevOps avec Ansible et DockerDevOps avec Ansible et Docker
DevOps avec Ansible et Docker
 
Docker@linuq
Docker@linuqDocker@linuq
Docker@linuq
 
Oxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide Workshop #4 - Docker, des tours dans le petit bassinOxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide Workshop #4 - Docker, des tours dans le petit bassin
 
Infra as Code, choisissez vous la pilule rouge ou la pilule bleue - Devoxx 2016
Infra as Code, choisissez vous la pilule rouge ou la pilule bleue - Devoxx 2016Infra as Code, choisissez vous la pilule rouge ou la pilule bleue - Devoxx 2016
Infra as Code, choisissez vous la pilule rouge ou la pilule bleue - Devoxx 2016
 
Git pour les (pas si) nuls
Git pour les (pas si) nulsGit pour les (pas si) nuls
Git pour les (pas si) nuls
 
Les bases de git
Les bases de gitLes bases de git
Les bases de git
 
Git l'essentiel
Git l'essentielGit l'essentiel
Git l'essentiel
 
Découvrir et utiliser Git : le logiciel de gestion de versions décentralisé
Découvrir et utiliser Git : le logiciel de gestion de versions décentraliséDécouvrir et utiliser Git : le logiciel de gestion de versions décentralisé
Découvrir et utiliser Git : le logiciel de gestion de versions décentralisé
 
Introduction à Docker et Gaudi
Introduction à Docker et GaudiIntroduction à Docker et Gaudi
Introduction à Docker et Gaudi
 
Présentation Git & GitHub
Présentation Git & GitHubPrésentation Git & GitHub
Présentation Git & GitHub
 
Docker : quels enjeux pour le stockage et réseau ? Paris Open Source Summit ...
Docker : quels enjeux pour le stockage et réseau ? Paris Open Source Summit ...Docker : quels enjeux pour le stockage et réseau ? Paris Open Source Summit ...
Docker : quels enjeux pour le stockage et réseau ? Paris Open Source Summit ...
 
Codons notre infrastructure
Codons notre infrastructureCodons notre infrastructure
Codons notre infrastructure
 
Retour d'expérience Docker: Puissance et simplicité de VSTS, déploiement sur ...
Retour d'expérience Docker: Puissance et simplicité de VSTS, déploiement sur ...Retour d'expérience Docker: Puissance et simplicité de VSTS, déploiement sur ...
Retour d'expérience Docker: Puissance et simplicité de VSTS, déploiement sur ...
 
Présentation de git
Présentation de gitPrésentation de git
Présentation de git
 
Docker en Production (Docker Paris)
Docker en Production (Docker Paris)Docker en Production (Docker Paris)
Docker en Production (Docker Paris)
 
Migration d'une base de code subversion vers git
Migration d'une base de code subversion vers gitMigration d'une base de code subversion vers git
Migration d'une base de code subversion vers git
 
Introduction à Docker et utilisation en production /Digital apéro Besançon [1...
Introduction à Docker et utilisation en production /Digital apéro Besançon [1...Introduction à Docker et utilisation en production /Digital apéro Besançon [1...
Introduction à Docker et utilisation en production /Digital apéro Besançon [1...
 
Livre blanc docker
Livre blanc docker Livre blanc docker
Livre blanc docker
 

Viewers also liked

Dopage et sport ab 13 05 14
Dopage et sport ab 13 05 14Dopage et sport ab 13 05 14
Dopage et sport ab 13 05 14raymondteyrouz
 
Le tableau de bord de l'économie française
Le tableau de bord de l'économie françaiseLe tableau de bord de l'économie française
Le tableau de bord de l'économie françaiseCCI Loiret
 
Tendances mobiles et digitales du MWC 2015
Tendances mobiles et digitales du MWC 2015Tendances mobiles et digitales du MWC 2015
Tendances mobiles et digitales du MWC 2015Valtech
 
Mongo db et java en pratique
Mongo db et java en pratiqueMongo db et java en pratique
Mongo db et java en pratiqueKatia Aresti
 
Quelles sont les sources de la croissance économique ? Terminale ES Economie ...
Quelles sont les sources de la croissance économique ? Terminale ES Economie ...Quelles sont les sources de la croissance économique ? Terminale ES Economie ...
Quelles sont les sources de la croissance économique ? Terminale ES Economie ...Laure Le Gurun
 
Le Moteur A Hydrogene
Le Moteur A HydrogeneLe Moteur A Hydrogene
Le Moteur A HydrogeneCinemaTICE
 
Introduction au Pretotyping par Elalami
Introduction au Pretotyping par ElalamiIntroduction au Pretotyping par Elalami
Introduction au Pretotyping par Elalamie_lalami
 
Les nouvelles tendances dans l'immobilier - Etude Ipsos pour Orpi
Les nouvelles tendances dans l'immobilier - Etude Ipsos pour OrpiLes nouvelles tendances dans l'immobilier - Etude Ipsos pour Orpi
Les nouvelles tendances dans l'immobilier - Etude Ipsos pour OrpiIpsos France
 
Les collectivités territoriales et le financement des lieux-de-culte
Les collectivités territoriales et le financement des lieux-de-culteLes collectivités territoriales et le financement des lieux-de-culte
Les collectivités territoriales et le financement des lieux-de-culteKantar
 
Aluminum Anodizing
Aluminum AnodizingAluminum Anodizing
Aluminum AnodizingAACOA.com
 
TALAT Lecture 5203: Anodizing of Aluminium
TALAT Lecture 5203: Anodizing of AluminiumTALAT Lecture 5203: Anodizing of Aluminium
TALAT Lecture 5203: Anodizing of AluminiumCORE-Materials
 
Dear NSA, let me take care of your slides.
Dear NSA, let me take care of your slides.Dear NSA, let me take care of your slides.
Dear NSA, let me take care of your slides.Emiland
 
What I Carry: 10 Tools for Success
What I Carry: 10 Tools for SuccessWhat I Carry: 10 Tools for Success
What I Carry: 10 Tools for SuccessJonathon Colman
 
Référencement post-ménagerie Google, êtes-vous prêt ? - Aurélien Bardon - SEO...
Référencement post-ménagerie Google, êtes-vous prêt ? - Aurélien Bardon - SEO...Référencement post-ménagerie Google, êtes-vous prêt ? - Aurélien Bardon - SEO...
Référencement post-ménagerie Google, êtes-vous prêt ? - Aurélien Bardon - SEO...SEO CAMP
 
What Makes Great Infographics
What Makes Great InfographicsWhat Makes Great Infographics
What Makes Great InfographicsSlideShare
 
Masters of SlideShare
Masters of SlideShareMasters of SlideShare
Masters of SlideShareKapost
 
STOP! VIEW THIS! 10-Step Checklist When Uploading to Slideshare
STOP! VIEW THIS! 10-Step Checklist When Uploading to SlideshareSTOP! VIEW THIS! 10-Step Checklist When Uploading to Slideshare
STOP! VIEW THIS! 10-Step Checklist When Uploading to SlideshareEmpowered Presentations
 

Viewers also liked (20)

Dopage et sport ab 13 05 14
Dopage et sport ab 13 05 14Dopage et sport ab 13 05 14
Dopage et sport ab 13 05 14
 
Le tableau de bord de l'économie française
Le tableau de bord de l'économie françaiseLe tableau de bord de l'économie française
Le tableau de bord de l'économie française
 
Paludisme
PaludismePaludisme
Paludisme
 
Tendances mobiles et digitales du MWC 2015
Tendances mobiles et digitales du MWC 2015Tendances mobiles et digitales du MWC 2015
Tendances mobiles et digitales du MWC 2015
 
Reseaux de capteurs sans fils - WSN
Reseaux de capteurs sans fils - WSNReseaux de capteurs sans fils - WSN
Reseaux de capteurs sans fils - WSN
 
Mongo db et java en pratique
Mongo db et java en pratiqueMongo db et java en pratique
Mongo db et java en pratique
 
Quelles sont les sources de la croissance économique ? Terminale ES Economie ...
Quelles sont les sources de la croissance économique ? Terminale ES Economie ...Quelles sont les sources de la croissance économique ? Terminale ES Economie ...
Quelles sont les sources de la croissance économique ? Terminale ES Economie ...
 
Le Moteur A Hydrogene
Le Moteur A HydrogeneLe Moteur A Hydrogene
Le Moteur A Hydrogene
 
Cgo porte ouverte 2010
Cgo porte ouverte 2010Cgo porte ouverte 2010
Cgo porte ouverte 2010
 
Introduction au Pretotyping par Elalami
Introduction au Pretotyping par ElalamiIntroduction au Pretotyping par Elalami
Introduction au Pretotyping par Elalami
 
Les nouvelles tendances dans l'immobilier - Etude Ipsos pour Orpi
Les nouvelles tendances dans l'immobilier - Etude Ipsos pour OrpiLes nouvelles tendances dans l'immobilier - Etude Ipsos pour Orpi
Les nouvelles tendances dans l'immobilier - Etude Ipsos pour Orpi
 
Les collectivités territoriales et le financement des lieux-de-culte
Les collectivités territoriales et le financement des lieux-de-culteLes collectivités territoriales et le financement des lieux-de-culte
Les collectivités territoriales et le financement des lieux-de-culte
 
Aluminum Anodizing
Aluminum AnodizingAluminum Anodizing
Aluminum Anodizing
 
TALAT Lecture 5203: Anodizing of Aluminium
TALAT Lecture 5203: Anodizing of AluminiumTALAT Lecture 5203: Anodizing of Aluminium
TALAT Lecture 5203: Anodizing of Aluminium
 
Dear NSA, let me take care of your slides.
Dear NSA, let me take care of your slides.Dear NSA, let me take care of your slides.
Dear NSA, let me take care of your slides.
 
What I Carry: 10 Tools for Success
What I Carry: 10 Tools for SuccessWhat I Carry: 10 Tools for Success
What I Carry: 10 Tools for Success
 
Référencement post-ménagerie Google, êtes-vous prêt ? - Aurélien Bardon - SEO...
Référencement post-ménagerie Google, êtes-vous prêt ? - Aurélien Bardon - SEO...Référencement post-ménagerie Google, êtes-vous prêt ? - Aurélien Bardon - SEO...
Référencement post-ménagerie Google, êtes-vous prêt ? - Aurélien Bardon - SEO...
 
What Makes Great Infographics
What Makes Great InfographicsWhat Makes Great Infographics
What Makes Great Infographics
 
Masters of SlideShare
Masters of SlideShareMasters of SlideShare
Masters of SlideShare
 
STOP! VIEW THIS! 10-Step Checklist When Uploading to Slideshare
STOP! VIEW THIS! 10-Step Checklist When Uploading to SlideshareSTOP! VIEW THIS! 10-Step Checklist When Uploading to Slideshare
STOP! VIEW THIS! 10-Step Checklist When Uploading to Slideshare
 

Similar to Développement avec Intégration continue:Git, Jenkins, Tomcat, CentOS, ubuntu

Mise en place de Nagios core sur Ubuntu 22.04
Mise en place de Nagios core  sur Ubuntu 22.04Mise en place de Nagios core  sur Ubuntu 22.04
Mise en place de Nagios core sur Ubuntu 22.04ImnaTech
 
5390997 Support formation : Construire et administrer vos conteneurs avec Doc...
5390997 Support formation : Construire et administrer vos conteneurs avec Doc...5390997 Support formation : Construire et administrer vos conteneurs avec Doc...
5390997 Support formation : Construire et administrer vos conteneurs avec Doc...AbdellahELMAMOUN
 
Installation de snort avec pulled pork
Installation de snort avec pulled porkInstallation de snort avec pulled pork
Installation de snort avec pulled porkSamiMessaoudi4
 
SOLARIS 10 - Exercise - FR - 2008
SOLARIS 10 - Exercise - FR - 2008SOLARIS 10 - Exercise - FR - 2008
SOLARIS 10 - Exercise - FR - 2008Sonny Brabez
 
Docker, ça mange quoi au printemps
Docker, ça mange quoi au printempsDocker, ça mange quoi au printemps
Docker, ça mange quoi au printempsJulien Maitrehenry
 
Retour d'expérience technique Go, gRPC, Kubernetes
Retour d'expérience technique Go, gRPC, KubernetesRetour d'expérience technique Go, gRPC, Kubernetes
Retour d'expérience technique Go, gRPC, KubernetesVincent Composieux
 
Dev cloud java : la tête dans les nuages
Dev cloud java : la tête dans les nuagesDev cloud java : la tête dans les nuages
Dev cloud java : la tête dans les nuagesSOAT
 
DRAFT - Vm Ware - Installation Nuxeo
DRAFT - Vm Ware - Installation NuxeoDRAFT - Vm Ware - Installation Nuxeo
DRAFT - Vm Ware - Installation NuxeoPASCAL Jean Marie
 
Rapport openembedded
Rapport openembeddedRapport openembedded
Rapport openembeddedAyoub Rouzi
 
Rapport systéme embarqué busybox
Rapport systéme embarqué busyboxRapport systéme embarqué busybox
Rapport systéme embarqué busyboxAyoub Rouzi
 
Alphorm.com Formation Nagios et Cacti : Installation et Administration
Alphorm.com Formation Nagios et Cacti : Installation et AdministrationAlphorm.com Formation Nagios et Cacti : Installation et Administration
Alphorm.com Formation Nagios et Cacti : Installation et AdministrationAlphorm
 
Telecharger Cours Systèmes d’exploitation windows: Administration Windows
Telecharger Cours Systèmes d’exploitation windows: Administration  WindowsTelecharger Cours Systèmes d’exploitation windows: Administration  Windows
Telecharger Cours Systèmes d’exploitation windows: Administration Windowswebreaker
 
Automatisez vos tâches répétitives avec Grunt (Blend 2013)
Automatisez vos tâches répétitives avec Grunt (Blend 2013)Automatisez vos tâches répétitives avec Grunt (Blend 2013)
Automatisez vos tâches répétitives avec Grunt (Blend 2013)Corinne Schillinger
 
[FR] Présentatation d'Ansible
[FR] Présentatation d'Ansible [FR] Présentatation d'Ansible
[FR] Présentatation d'Ansible Armand Guio
 

Similar to Développement avec Intégration continue:Git, Jenkins, Tomcat, CentOS, ubuntu (20)

Mise en place de Nagios core sur Ubuntu 22.04
Mise en place de Nagios core  sur Ubuntu 22.04Mise en place de Nagios core  sur Ubuntu 22.04
Mise en place de Nagios core sur Ubuntu 22.04
 
5390997 Support formation : Construire et administrer vos conteneurs avec Doc...
5390997 Support formation : Construire et administrer vos conteneurs avec Doc...5390997 Support formation : Construire et administrer vos conteneurs avec Doc...
5390997 Support formation : Construire et administrer vos conteneurs avec Doc...
 
git-cmds-base.pdf
git-cmds-base.pdfgit-cmds-base.pdf
git-cmds-base.pdf
 
Installation de snort avec pulled pork
Installation de snort avec pulled porkInstallation de snort avec pulled pork
Installation de snort avec pulled pork
 
SOLARIS 10 - Exercise - FR - 2008
SOLARIS 10 - Exercise - FR - 2008SOLARIS 10 - Exercise - FR - 2008
SOLARIS 10 - Exercise - FR - 2008
 
Docker, ça mange quoi au printemps
Docker, ça mange quoi au printempsDocker, ça mange quoi au printemps
Docker, ça mange quoi au printemps
 
Retour d'expérience technique Go, gRPC, Kubernetes
Retour d'expérience technique Go, gRPC, KubernetesRetour d'expérience technique Go, gRPC, Kubernetes
Retour d'expérience technique Go, gRPC, Kubernetes
 
Dev cloud java : la tête dans les nuages
Dev cloud java : la tête dans les nuagesDev cloud java : la tête dans les nuages
Dev cloud java : la tête dans les nuages
 
Asterisk trixbox
Asterisk trixboxAsterisk trixbox
Asterisk trixbox
 
Config ip
Config ipConfig ip
Config ip
 
DRAFT - Vm Ware - Installation Nuxeo
DRAFT - Vm Ware - Installation NuxeoDRAFT - Vm Ware - Installation Nuxeo
DRAFT - Vm Ware - Installation Nuxeo
 
Rapport openembedded
Rapport openembeddedRapport openembedded
Rapport openembedded
 
Vagrant - Concept
Vagrant - ConceptVagrant - Concept
Vagrant - Concept
 
Rapport systéme embarqué busybox
Rapport systéme embarqué busyboxRapport systéme embarqué busybox
Rapport systéme embarqué busybox
 
Mise en place nagios
Mise en place nagiosMise en place nagios
Mise en place nagios
 
Alphorm.com Formation Nagios et Cacti : Installation et Administration
Alphorm.com Formation Nagios et Cacti : Installation et AdministrationAlphorm.com Formation Nagios et Cacti : Installation et Administration
Alphorm.com Formation Nagios et Cacti : Installation et Administration
 
Tuto bada
Tuto badaTuto bada
Tuto bada
 
Telecharger Cours Systèmes d’exploitation windows: Administration Windows
Telecharger Cours Systèmes d’exploitation windows: Administration  WindowsTelecharger Cours Systèmes d’exploitation windows: Administration  Windows
Telecharger Cours Systèmes d’exploitation windows: Administration Windows
 
Automatisez vos tâches répétitives avec Grunt (Blend 2013)
Automatisez vos tâches répétitives avec Grunt (Blend 2013)Automatisez vos tâches répétitives avec Grunt (Blend 2013)
Automatisez vos tâches répétitives avec Grunt (Blend 2013)
 
[FR] Présentatation d'Ansible
[FR] Présentatation d'Ansible [FR] Présentatation d'Ansible
[FR] Présentatation d'Ansible
 

Développement avec Intégration continue:Git, Jenkins, Tomcat, CentOS, ubuntu

  • 2. Contents ● 1. Introduction ● 2. Git (Ubunto 12.04 LTS) ● 3. Tomcat6 ● 4. Jenkins – – 4.2 Ajout du plugin Git – 4.3 Création d'un nouveau job – 4.4 Ajout du plugin Deploy – ● 4.1 Installation depuis le War 4.4 Configuration du Job GameOfLife pour déploiement FAQ 25.12.13 Your name here (insert->page number) 2
  • 3. 1. Introduction: Plateforme de travail Ubunto + Gestionnaire de bureau XFCE4 25.12.13 Your name here (insert->page number) 3
  • 4. 1. Introduction: Plateforme de travail Ubunto + Gestionnaire de bureau XFCE4 25.12.13 Your name here (insert->page number) 4
  • 5. 1. Introduction: Plateforme de travail Le projet game-of-life qu'on va utiliser tout au long de ce tutoriel disponible à partir de ce lien: https://github.com/wakaleo/game-of-life 25.12.13 Your name here (insert->page number) 5
  • 6. 1. Introduction: Plateforme de travail CentOS installé sur une machine virtuelle Qemu 25.12.13 Your name here (insert->page number) 6
  • 7. 1. Introduction: Plateforme de travail Pour que la VM CentOS soit disponible en ssh pour jenkins plus tard il faut configurer l'accès comme suit: Hostfwd: forward tcp port 2222 from host to port 22 on guest Ou bien : -redir tcp:2222::22 25.12.13 Your name here (insert->page number) 7
  • 8. 1. Introduction: Plateforme de travail J'ai crée un script à partir de la commande du slide précédent: 25.12.13 Your name here (insert->page number) 8
  • 9. 1. Introduction: Plateforme de travail 25.12.13 Your name here (insert->page number) 9
  • 10. 1. Introduction: Plateforme de travail 25.12.13 Your name here (insert->page number) 10
  • 11. 1. Introduction: Plateforme de travail 25.12.13 Your name here (insert->page number) 11
  • 12. 2. Git Initialisation du repos : git init chemin_du_repo Ajout des fichiers du repos : git add chemin_du_repo/* Pour que le repo soit disponible pour tout les utilisateurs de git, il faut faire un commit: git commit -m “commentaire” 25.12.13 Your name here (insert->page number) 12
  • 13. 2. Git 25.12.13 Your name here (insert->page number) 13
  • 14. 2. Git 25.12.13 Your name here (insert->page number) 14
  • 15. 2. Git 25.12.13 Your name here (insert->page number) 15
  • 16. 2. Git Si vous préférrer l'interface graphique, vous pouvez installé gitk sur ubuntu: 25.12.13 Your name here (insert->page number) 16
  • 17. 2. Git 25.12.13 Your name here (insert->page number) 17
  • 18. 2. Git 25.12.13 Your name here (insert->page number) 18
  • 19. 2. Git 25.12.13 Your name here (insert->page number) 19
  • 20. 2. Git 25.12.13 Your name here (insert->page number) 20
  • 21. 2. Tomcat6 1. Vérifier si tomcat est déjà installé ou non, généralement après une installation CentOS il est déjà installé 2. Si non installé, en mode root faite l'installation avec yum 25.12.13 Your name here (insert->page number) 21
  • 22. 2. Tomcat6 3.Vérifier l'accès à la page Web de Tomcat (Initialement ça ne marche que pour localhost) 25.12.13 Your name here (insert->page number) 22
  • 23. 2. Tomcat6 4.Activer la résolution des noms d'hôtes en activant l'option resolve hosts (optionnel) 5.Maintenant on peut y accéder à traver l'@Ip de la machine 25.12.13 Your name here (insert->page number) 23
  • 24. 2. Tomcat6 6.Activer l'accès pour l'interface d'administration de tomcat6, en ajoutant un utilisateur avec le rôle manager 25.12.13 Your name here (insert->page number) 24
  • 25. 2. Tomcat6 7.Accèder à page d'administration de tomcat6: http://localhost:8080/manager 25.12.13 Your name here (insert->page number) 25
  • 26. 2. Tomcat6 7.Maintenant on peut administrer tomcat6 25.12.13 Your name here (insert->page number) 26
  • 27. 3. Tomcat6 25.12.13 Your name here (insert->page number) 27
  • 28. 4.Jenkins 25.12.13 Your name here (insert->page number) 28
  • 29. 4.1 Installation depuis le War 1. Télécharger la dernière version du war sur : http://jenkins-ci.org 25.12.13 Your name here (insert->page number) 29
  • 30. 4.1 Installation depuis le War 2. Déployer le .war depuis Tomcat Manager: 25.12.13 Your name here (insert->page number) 30
  • 31. 4.1 Installation depuis le War 3. Configurer le répertoire de Jenkins dans /etc/tomcat6/tomcat.conf 25.12.13 Your name here (insert->page number) 31
  • 32. 4.1 Installation depuis le War 4. Configurer le répertoire de Jenkins dans /etc/tomcat6/context.xml 25.12.13 Your name here (insert->page number) 32
  • 33. 4.1 Installation depuis le War 5. Vérifier que tomcat a les droits nécessaires sur le dossier JENKINS_HOME cad /usr/jenkins 25.12.13 Your name here (insert->page number) 33
  • 34. 4.1 Installation depuis le War 5.bis: Sinon exécuter la commande suivante : 25.12.13 Your name here (insert->page number) 34
  • 35. 4.1 Installation depuis le War 6. Jenkins est maintenant prêt à l'utilisation: 25.12.13 Your name here (insert->page number) 35
  • 36. 4.1 Installation depuis le War 6. Jenkins est maintenant prêt à l'utilisation: 25.12.13 Your name here (insert->page number) 36
  • 37. 4.1 Installation depuis le War 25.12.13 Your name here (insert->page number) 37
  • 38. 4.2 Installation du Git Plugin 25.12.13 Your name here (insert->page number) 38
  • 39. 4.2 Installation du Git Plugin 25.12.13 Your name here (insert->page number) 39
  • 40. 4.3 Création d'nouveau Job 25.12.13 Your name here (insert->page number) 40
  • 41. 4.3 Création d'nouveau Job 25.12.13 Your name here (insert->page number) 41
  • 42. 4.3 Création d'nouveau Job Afin d'accèder au repo git sur la machine hôte, on doit configurer la machine guest (CentOS) exécutant Tomcat, afin qu'elle puisse se connecter automatiquement sur ssh à la machine hôte. Puisque tomcat est l'utilisateur de Tomcat6, on doit configurer le jeu de clé pour cette utilisateur. Pour ce faire, on procède comme suit: 1. Création du dossier .ssh sous le répertoire home (/usr/share/tomcat6) de l'utilisateur tomcat Tout en lui donnant les priviliège de lecture/écriture: 25.12.13 Your name here (insert->page number) 42
  • 43. 4.3 Création d'nouveau Job 25.12.13 Your name here (insert->page number) 43
  • 44. 4.3 Création d'nouveau Job 2. Se connecter en tant que l'utilisateur tomcat, créer le jeu de clé et les copier vers la machine hôte qui héberge le serveur git : 25.12.13 Your name here (insert->page number) 44
  • 45. 4.3 Création d'nouveau Job 25.12.13 Your name here (insert->page number) 45
  • 46. 4.3 Création d'nouveau Job 25.12.13 Your name here (insert->page number) 46
  • 47. 4.3 Création d'nouveau Job Pour compiler le projet on a besoin du jdk-devel, on doit l'installer: 25.12.13 Your name here (insert->page number) 47
  • 48. 4.3 Création d'nouveau Job 25.12.13 Your name here (insert->page number) 48
  • 49. 4.3 Création d'nouveau Job Configurer le projet pour compiler le projet pour jdk adéquat: 25.12.13 Your name here (insert->page number) 49
  • 50. 4.3 Création d'nouveau Job Configurer le projet pour compiler le projet pour jdk adéquat: 25.12.13 Your name here (insert->page number) 50
  • 51. 4.3 Création d'nouveau Job Configurer le projet pour utiliser maven (l'installation se fera automtiquement pendant le premier build): 25.12.13 Your name here (insert->page number) 51
  • 52. 4.3 Création d'nouveau Job 25.12.13 Your name here (insert->page number) 52
  • 53. 4.3 Création d'nouveau Job 25.12.13 Your name here (insert->page number) 53
  • 54. 4.3 Création d'nouveau Job 25.12.13 Your name here (insert->page number) 54
  • 55. 4.3 Création d'nouveau Job 25.12.13 Your name here (insert->page number) 55
  • 56. 4.3 Création d'nouveau Job Jenkins ne peut trouver le répertoire .m2, il génère ainsi une erreur: 25.12.13 Your name here (insert->page number) 56
  • 57. 4.3 Création d'nouveau Job Pour remédier à cette erreur il suffit de créer le dossier .m2 et donner les privilèges nécessaire À l'utilisateur tomcat puisqu'il est le conteneur de l'appilication Jenkins qui s'éxécute sous ses Droits d'accès 25.12.13 Your name here (insert->page number) 57
  • 58. 4.3 Création d'nouveau Job Une autre erreur de même type pour le dossier .jenkins: 25.12.13 Your name here (insert->page number) 58
  • 59. 4.3 Création d'nouveau Job 25.12.13 Your name here (insert->page number) 59
  • 60. 4.3 Création d'nouveau Job 25.12.13 Your name here (insert->page number) 60
  • 61. 4.3 Création d'nouveau Job 25.12.13 Your name here (insert->page number) 61
  • 62. 4.3 Création d'nouveau Job 25.12.13 Your name here (insert->page number) 62
  • 63. 4.3 Création d'nouveau Job 25.12.13 Your name here (insert->page number) 63
  • 64. 4.3 Création d'nouveau Job 25.12.13 Your name here (insert->page number) 64
  • 65. 4.4 Ajout du plugin de déploiement 25.12.13 Your name here (insert->page number) 65
  • 66. 4.4 Ajout du plugin de déploiement 25.12.13 Your name here (insert->page number) 66
  • 67. 4.4 Ajout du plugin de déploiement 25.12.13 Your name here (insert->page number) 67
  • 68. 4.4 Ajout du plugin de déploiement 25.12.13 Your name here (insert->page number) 68
  • 69. 4.4 Ajout du plugin de déploiement 25.12.13 Your name here (insert->page number) 69
  • 70. 4.4 Configuration du déploiement automatique 25.12.13 Your name here (insert->page number) 70
  • 71. 4.4 Configuration du déploiement automatique 25.12.13 Your name here (insert->page number) 71
  • 72. 4.4 Configuration du déploiement automatique 25.12.13 Your name here (insert->page number) 72
  • 73. 4.4 Configuration du déploiement automatique 25.12.13 Your name here (insert->page number) 73
  • 74. 4.4 Configuration du déploiement automatique Le jeu a été déployé sur tomcat et est accessible depuis l'interface d'administration des webapps De Tomcat http://localhost:8080/manager/ 25.12.13 Your name here (insert->page number) 74
  • 75. 4.4 Configuration du déploiement automatique Maintenant on peut y jouer ! 25.12.13 Your name here (insert->page number) 75
  • 76. 4.4 Configuration du déploiement automatique 25.12.13 Your name here (insert->page number) 76
  • 77. 4.4 Configuration du déploiement automatique 25.12.13 Your name here (insert->page number) 77
  • 78. SUCCESS 25.12.13 Your name here (insert->page number) 78
  • 79. FAQ 25.12.13 Your name here (insert->page number) 79
  • 80. FAQ Si vous avez des remarques ou bien des conseils sur les configs n'hésitez pas à me contacter sur dimmumeister@gmail.com pour que je les prennent en considération et met à jour ce tutorial. Merci d'avance :) 25.12.13 Your name here (insert->page number) 80

Editor's Notes

  1. Ceci est un tutorial pas à pas de l'installation et la configuration d'une plateforme permettant l'intégration continue automatique d'un projet MAVEN3 et son déploiement.