diff --git a/README.md b/README.md index 2a783e375008ef0f22dde130bda5371d6d8a2cf4..c43538b7013e35d68c831a249c4325d0adc18b45 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,14 @@ -# JenkinsGit +# Table des matières + +- [Auteur(s)](#auteurs) +- [Travail à réaliser](#travail-à-réaliser) +- [Installation/Tutoriel](#installationtutoriel) + - [Installation de docker](#installation-de-docker) + - [Installation de Jenkins](#installation-de-jenkins) + - [Configuration de base Jenkins et de GitLab](#configuration-de-base-jenkins-et-de-gitlab) + - [Liaison de Jenkins et de GitLab](#liaison-de-jenkins-et-de-gitlab) +- [Technologies utilisées](#technologies-utilisées) +- [Sources](#sources) ## Auteur(s) @@ -68,26 +78,133 @@ Pour tester si docker fonctionne correctement, vous pouvez effectuer la commande ```shell sudo run hello-world ``` -Si cette dernière commande fonctione, le terminal devrai fous renvoyer : +Si cette dernière commande fonctione, le terminal devrai vous renvoyer : ```shell Hello from Docker: This message shows that your installation appears to be working correctly. ``` -### Installation de Jekins +### Installation de Jenkins -XXX +Dans un premier temps, on cherche une image ubuntu (TODO ???) +```shell +sudo docker search ubuntu +``` + +Ensuite on télécharge l'image de jenkins (TODO ???) +```shell +sudo docker pull jenkins +``` + +Il faut vérifier que le Dockerfile sois présent avant d'effectuer la commande suivante permetant de créer une image de jenkins +```shell +sudo docker build -t jenkinsinstall . +``` + +Pour verifier que l'image que l'on viens de créer existe, vous pouvez entrer la commande +```shell +sudo docker images +``` + + +### Configuration de base Jenkins et de GitLab + +Pour executer l'image de Jenkins, tapez la commande +```shell +sudo docker run -t -i jenkinsinstall +``` + +Suite a cette commande, vous aurez le controle d'un termimal a l'intérieur de l'image + +A l'intérieur de ce nouveau terminal, tapez : +```shell +service jenkins start +``` + +Par la suite, vous devrai utiliser votre navigateur favori afin d'avoir accès au commande graphique +Pour cela, vous devais entrez votre IP ainsi qu'un port pour pouvoir avoir acces a l'interface graphique de jenkins + +En tappant cette commande, vous trouverez votre IP a coté de l'interface "eth0" +```shell +ifconfig +``` + +Par défault, l'IP est 172.17.0.2 et le port est 8080 + +Sur votre navigateur, vous devez obtenir le résultat suivant : + +![4](img/4_AccessJenkinsFromNav.png) + +Sur votre terminal Jenkins, tapez : +```shell +cat /var/lib/jenkins/secrets/initialAdminPassword +``` + +Copier le résultat puis collez le sur le navigateur + +Sur votre navigateur, vous devez obtenir le résultat suivant : + +![6](img/6_InstallJenkinsPlug.png) + +Selectionnez l'option "installer les plugins suggérés" + +Après l'installation, vous devez obtenir le résultat suivant : + +![8](img/8_InstallPluginSucess.png) + +Cliquez sur "Continuer en tant qu'Administrateur", a notez que votre identifiant sera "admin" et le mot de passe sera le mot de passe de /var/lib/jenkins/secrets/initialAdminPassword + +Cliquez sur "Sauvez et terminer" + +Cliquez sur "Conmmencer à utiliser Jenkins" + +Vous devez obtenir le résultat suivant : + +![10](img/10_TableauDeBord.png) + +Cliquez sur "Nouveau Item" + +Cliquez sur "Créer un nouveau job" + +Vous devez obtenir le résultat suivant : -### Configuration de base Jekins et de GitLab +![12](img/12_CreateProject.png) -XXX +Saisissez un nom et Cliquez sur "Construire un projet free-style" puis sur "OK" + + + + + +### Liaison de Jenkins et de GitLab + +Pour cette partie, nous partons du principe que vous avez acces a un projet que vous possedez. +Dans le cadre de notre tutoriel, Nous allons reprendre ce projet (JenkinsGit) Avec un fichier HelloWorld.java a tester + +Copiez le lien de votre projet : + +![5](img/5_ProjectLink.png) + +Sur l'interface graphique de jenkins au moment de la configuration d'un projet. +Allez sur "Gestion de code source" et cliquez sur "Git" +Puis collez le lien git sur "Repository URL" + +![6](img/6_PasterProjectLink.png) + +Plus bas dans le formulaire, dans la section "Build", selectionner l'option "Ajouter un script shell" puis ajoutez vos tests. +Dans notre cas (un simple test de compilation java) le script est + +```shell +javac HelloWorld.java +java HelloWorld +``` -### Liaison de Jekins et de GitLab +Puis confirmer le formulaire -XXX +Allez ensuite sur Projet > Espace de travail > Lancer un build -*TODO* +*TODO* continue ## Technologies utilisées @@ -97,4 +214,4 @@ XXX ## Sources -*TODO* \ No newline at end of file +- https://www.swtestacademy.com/jenkins-gitlab-integration/ \ No newline at end of file diff --git a/img/.gitkeep b/img/.gitkeep new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/img/10_TableauDeBord.png b/img/10_TableauDeBord.png new file mode 100644 index 0000000000000000000000000000000000000000..194592b8c7e12232734376bb69e6e85b4d74cb38 Binary files /dev/null and b/img/10_TableauDeBord.png differ diff --git a/img/12_CreateProject.png b/img/12_CreateProject.png new file mode 100644 index 0000000000000000000000000000000000000000..614dc27ffe605788099dead1d08e183a6d152378 Binary files /dev/null and b/img/12_CreateProject.png differ diff --git a/img/4_AccessJenkinsFromNav.png b/img/4_AccessJenkinsFromNav.png new file mode 100644 index 0000000000000000000000000000000000000000..b52e58dbc2fc5608687f8cec180b4e530e7f4320 Binary files /dev/null and b/img/4_AccessJenkinsFromNav.png differ diff --git a/img/5_ProjectLink.png b/img/5_ProjectLink.png new file mode 100644 index 0000000000000000000000000000000000000000..1f430b1c8c3531893d631c0ff5ac72c2de09225b Binary files /dev/null and b/img/5_ProjectLink.png differ diff --git a/img/6_InstallJenkinsPlug.png b/img/6_InstallJenkinsPlug.png new file mode 100644 index 0000000000000000000000000000000000000000..6e901a5d0f425fd414527aa1c122664ff00840f9 Binary files /dev/null and b/img/6_InstallJenkinsPlug.png differ diff --git a/img/6_PasterProjectLink.png b/img/6_PasterProjectLink.png new file mode 100644 index 0000000000000000000000000000000000000000..03726b706e24e452c1c3962cb808b1e2b50762fa Binary files /dev/null and b/img/6_PasterProjectLink.png differ diff --git a/img/8_InstallPluginSucess.png b/img/8_InstallPluginSucess.png new file mode 100644 index 0000000000000000000000000000000000000000..ecff3fbae3b93250be38e15514664c46f90d40a6 Binary files /dev/null and b/img/8_InstallPluginSucess.png differ