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...
1. Introduction: Plateforme de travail
Ubunto + Gestionnaire de bureau XFCE4

25.12.13

Your name here (insert->page numbe...
1. Introduction: Plateforme de travail
Ubunto + Gestionnaire de bureau XFCE4

25.12.13

Your name here (insert->page numbe...
1. Introduction: Plateforme de travail
Le projet game-of-life qu'on va utiliser tout au long de ce tutoriel disponible à p...
1. Introduction: Plateforme de travail
CentOS installé sur une machine virtuelle Qemu

25.12.13

Your name here (insert->p...
1. Introduction: Plateforme de travail
Pour que la VM CentOS soit disponible en ssh pour jenkins plus tard il faut configu...
1. Introduction: Plateforme de travail
J'ai crée un script à partir de la commande du slide précédent:

25.12.13

Your nam...
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 l...
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->p...
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. Tomcat6
3.Vérifier l'accès à la page Web de Tomcat (Initialement ça ne marche que pour localhost)

25.12.13

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

5.Maintenant on peut y...
2. Tomcat6
6.Activer l'accès pour l'interface d'administration de tomcat6,
en ajoutant un utilisateur avec le rôle manager...
2. Tomcat6
7.Accèder à page d'administration de tomcat6: http://localhost:8080/manager

25.12.13

Your name here (insert->...
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 ...
4.1 Installation depuis le War
2. Déployer le .war depuis Tomcat Manager:

25.12.13

Your name here (insert->page number)
...
4.1 Installation depuis le War
3. Configurer le répertoire de Jenkins dans /etc/tomcat6/tomcat.conf

25.12.13

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

25.12.13

Your name h...
4.1 Installation depuis le War
5. Vérifier que tomcat a les droits nécessaires sur le dossier JENKINS_HOME cad /usr/jenkin...
4.1 Installation depuis le War
5.bis: Sinon exécuter la commande suivante :

25.12.13

Your name here (insert->page number...
4.1 Installation depuis le War
6. Jenkins est maintenant prêt à l'utilisation:

25.12.13

Your name here (insert->page num...
4.1 Installation depuis le War
6. Jenkins est maintenant prêt à l'utilisation:

25.12.13

Your name here (insert->page num...
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...
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 mac...
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 her...
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 (inser...
4.3 Création d'nouveau Job
Configurer le projet pour compiler le projet pour jdk adéquat:

25.12.13

Your name here (inser...
4.3 Création d'nouveau Job
Configurer le projet pour utiliser maven (l'installation se fera automtiquement pendant le prem...
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 her...
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écessa...
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...
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'admini...
4.4 Configuration du déploiement automatique
Maintenant on peut y jouer !

25.12.13

Your name here (insert->page number)
...
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.co...
Upcoming SlideShare
Loading in...5
×

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

853

Published on

Comment préparer un environnement de développement (ici sur ubunu) avec intégration continue (Jenkins sur CentOS 6, déployé sur Tomcat) et déploiement automtaique sur Tomcat (CentOS)

Published in: Self Improvement
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
853
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
28
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • 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.
  • Développement avec Intégration continue:Git, Jenkins, Tomcat, CentOS, ubuntu

    1. 1. Continuous Integration Tutorial Made by Hamouda Ahmed
    2. 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. 3. 1. Introduction: Plateforme de travail Ubunto + Gestionnaire de bureau XFCE4 25.12.13 Your name here (insert->page number) 3
    4. 4. 1. Introduction: Plateforme de travail Ubunto + Gestionnaire de bureau XFCE4 25.12.13 Your name here (insert->page number) 4
    5. 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. 6. 1. Introduction: Plateforme de travail CentOS installé sur une machine virtuelle Qemu 25.12.13 Your name here (insert->page number) 6
    7. 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. 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. 9. 1. Introduction: Plateforme de travail 25.12.13 Your name here (insert->page number) 9
    10. 10. 1. Introduction: Plateforme de travail 25.12.13 Your name here (insert->page number) 10
    11. 11. 1. Introduction: Plateforme de travail 25.12.13 Your name here (insert->page number) 11
    12. 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. 13. 2. Git 25.12.13 Your name here (insert->page number) 13
    14. 14. 2. Git 25.12.13 Your name here (insert->page number) 14
    15. 15. 2. Git 25.12.13 Your name here (insert->page number) 15
    16. 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. 17. 2. Git 25.12.13 Your name here (insert->page number) 17
    18. 18. 2. Git 25.12.13 Your name here (insert->page number) 18
    19. 19. 2. Git 25.12.13 Your name here (insert->page number) 19
    20. 20. 2. Git 25.12.13 Your name here (insert->page number) 20
    21. 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. 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. 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. 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. 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. 26. 2. Tomcat6 7.Maintenant on peut administrer tomcat6 25.12.13 Your name here (insert->page number) 26
    27. 27. 3. Tomcat6 25.12.13 Your name here (insert->page number) 27
    28. 28. 4.Jenkins 25.12.13 Your name here (insert->page number) 28
    29. 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. 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. 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. 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. 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. 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. 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. 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. 37. 4.1 Installation depuis le War 25.12.13 Your name here (insert->page number) 37
    38. 38. 4.2 Installation du Git Plugin 25.12.13 Your name here (insert->page number) 38
    39. 39. 4.2 Installation du Git Plugin 25.12.13 Your name here (insert->page number) 39
    40. 40. 4.3 Création d'nouveau Job 25.12.13 Your name here (insert->page number) 40
    41. 41. 4.3 Création d'nouveau Job 25.12.13 Your name here (insert->page number) 41
    42. 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. 43. 4.3 Création d'nouveau Job 25.12.13 Your name here (insert->page number) 43
    44. 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. 45. 4.3 Création d'nouveau Job 25.12.13 Your name here (insert->page number) 45
    46. 46. 4.3 Création d'nouveau Job 25.12.13 Your name here (insert->page number) 46
    47. 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. 48. 4.3 Création d'nouveau Job 25.12.13 Your name here (insert->page number) 48
    49. 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. 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. 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. 52. 4.3 Création d'nouveau Job 25.12.13 Your name here (insert->page number) 52
    53. 53. 4.3 Création d'nouveau Job 25.12.13 Your name here (insert->page number) 53
    54. 54. 4.3 Création d'nouveau Job 25.12.13 Your name here (insert->page number) 54
    55. 55. 4.3 Création d'nouveau Job 25.12.13 Your name here (insert->page number) 55
    56. 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. 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. 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. 59. 4.3 Création d'nouveau Job 25.12.13 Your name here (insert->page number) 59
    60. 60. 4.3 Création d'nouveau Job 25.12.13 Your name here (insert->page number) 60
    61. 61. 4.3 Création d'nouveau Job 25.12.13 Your name here (insert->page number) 61
    62. 62. 4.3 Création d'nouveau Job 25.12.13 Your name here (insert->page number) 62
    63. 63. 4.3 Création d'nouveau Job 25.12.13 Your name here (insert->page number) 63
    64. 64. 4.3 Création d'nouveau Job 25.12.13 Your name here (insert->page number) 64
    65. 65. 4.4 Ajout du plugin de déploiement 25.12.13 Your name here (insert->page number) 65
    66. 66. 4.4 Ajout du plugin de déploiement 25.12.13 Your name here (insert->page number) 66
    67. 67. 4.4 Ajout du plugin de déploiement 25.12.13 Your name here (insert->page number) 67
    68. 68. 4.4 Ajout du plugin de déploiement 25.12.13 Your name here (insert->page number) 68
    69. 69. 4.4 Ajout du plugin de déploiement 25.12.13 Your name here (insert->page number) 69
    70. 70. 4.4 Configuration du déploiement automatique 25.12.13 Your name here (insert->page number) 70
    71. 71. 4.4 Configuration du déploiement automatique 25.12.13 Your name here (insert->page number) 71
    72. 72. 4.4 Configuration du déploiement automatique 25.12.13 Your name here (insert->page number) 72
    73. 73. 4.4 Configuration du déploiement automatique 25.12.13 Your name here (insert->page number) 73
    74. 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. 75. 4.4 Configuration du déploiement automatique Maintenant on peut y jouer ! 25.12.13 Your name here (insert->page number) 75
    76. 76. 4.4 Configuration du déploiement automatique 25.12.13 Your name here (insert->page number) 76
    77. 77. 4.4 Configuration du déploiement automatique 25.12.13 Your name here (insert->page number) 77
    78. 78. SUCCESS 25.12.13 Your name here (insert->page number) 78
    79. 79. FAQ 25.12.13 Your name here (insert->page number) 79
    80. 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
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×