Je m'appelle Ivan Sidorenko, je suis ingénieur d'essais chez Digital Design. Ma tùche consistait à implémenter le lancement des autotests écrits en Java Selenium.
Je suis nouveau sur CI / CD, j'ai donc rencontrĂ© beaucoup de problĂšmes. Je n'ai pas trouvĂ© d'instructions dĂ©taillĂ©es sur Internet pour cette tĂąche.Par consĂ©quent, aprĂšs l'avoir compris avec l'aide de nos dĂ©veloppeurs, j'ai dĂ©cidĂ© d'Ă©crire un manuel pour les mĂȘmes nouveaux arrivants que moi.
J'ai décrit en détail toutes les étapes nécessaires pour configurer CI / CD en utilisant GitLab, par exemple, en exécutant un simple programme HelloWorld écrit en utilisant Java.

Les autotests doivent ĂȘtre exĂ©cutĂ©s Ă chaque fois qu'un dĂ©veloppeur envoie des modifications au rĂ©fĂ©rentiel GitLab. Cette tĂąche correspond Ă l'un des principes du CI / CD - le lancement d'autotests Ă chaque Ă©tape du dĂ©veloppement du produit. Je ne dĂ©crirai pas le concept CI / CD complet dans ce manuel - ces informations sont faciles Ă trouver sur Internet.
Mais ce qu'il ne faut pas trouver, c'est comment configurer CI / CD en utilisant GitLab pour les débutants, avec une description de toutes les étapes nécessaires. Ceci sera discuté ci-dessous.
1. Installez Git et accédez au référentiel GitLab
J'ai déployé tout le nécessaire pour démarrer le projet sur une machine distante, mais comme le but de ce manuel est de me familiariser avec les bases du déploiement de CI / CD, nous allons travailler sur la machine locale.
AccĂ©dez Ă GitLab sur la page Projets, dans la fenĂȘtre qui apparaĂźt, cliquez sur le bouton
Nouveau projet
Définissez le nom du projet, définissez la valeur Private dans le champ Visibility Project et cliquez sur le bouton vert
Create project .

Félicitations, le projet dans GitLab a été créé.

Nous devons maintenant déployer le référentiel local à partir duquel nous allons pousser les modifications vers GitLab. Pour ce faire, vous devez d'abord installer Git, pendant l'installation, vous pouvez sélectionner toutes les valeurs par défaut. S'il n'y avait aucune expérience avec git et son installation, je vous recommande de vous familiariser avec
ce cours sur
www.youtube.com .
Vous devez maintenant configurer les variables d'environnement Git user.name et user.email. Nous prenons les valeurs de la page GitLab -> Projet / Détails (nous obtenons cette page dÚs que nous créons le projet).
git config --global user.name "user name" git config --global user.email "email@examle.com"
Ouvrez Git Bash, pour ce faire, cliquez n'importe oĂč sur le bureau et sĂ©lectionnez Git Bash ici. Maintenant, nous entrons ces deux commandes de maniĂšre sĂ©quentielle.
AprĂšs cela, vous devez crĂ©er un rĂ©fĂ©rentiel local, d'oĂč nous allons pousser toutes les modifications dans GitLab. Pour ce faire, crĂ©ez un dossier sur la machine locale, allez-y, ouvrez Git Bash et exĂ©cutez ces commandes sĂ©quentiellement (elles sont Ă©galement disponibles sur la page GitLab -> Projet / DĂ©tails).
git init
git remote add origin
git init
git remote add origin
ici spécifiez le chemin de votre projetMaintenant, notre référentiel distant a été ajouté. Mais avant de commencer à pousser les modifications dans le référentiel GitLab, vous devez configurer les clés SSH.
2. Configuration des clés SSH
Les clés SSH sont nécessaires pour un transfert de données sécurisé des référentiels distants vers le référentiel git principal, via le protocole SSH. Créez une paire de clés.
Ouvrez Git Bash et entrez:
ssh-keygen -o -t rsa -b 4096 -C email@example.com
Au lieu de email@example.com, nous substituons votre email.
Ensuite, nous obtenons un message oĂč les clĂ©s seront stockĂ©es. Ici, nous appuyons simplement sur EntrĂ©e. Les clĂ©s seront enregistrĂ©es dans le dossier du formulaire:
C:\Users\User_name\.ssh
AprÚs avoir choisi un dossier, il nous sera demandé d'entrer un mot de passe pour les clés, vous pouvez ignorer cette étape en appuyant deux fois sur Entrée.
Vous devez maintenant ajouter la clé publique à votre compte GitLab. Accédez au dossier .ssh et ouvrez le fichier id _rsa.pub id avec le bloc-notes. Copiez le contenu du fichier et accédez à GitLab. Ici, vous devez accéder aux paramÚtres utilisateur (cliquez sur le bouton en haut à droite et sélectionnez ParamÚtres).

Accédez à la section Clés SSH.
Insérez la clé publique dans le champ Clé et cliquez sur le bouton
Ajouter une clé .

Vous devez maintenant enregistrer la clé privée sur la machine distante. Pour ce faire, exécutez les commandes:
ssh-agent bash ssh-add ~/.ssh/key
oĂč
clé est la clé privée générée (fichier nommé "id_rsa")
ssh-agent est un programme de stockage de clés privées utilisées pour l'authentification avec des clés publiques (dans notre cas, il s'agit d'une clé RSA).
Vous ĂȘtes maintenant prĂȘt Ă envoyer des fichiers dans GitLab. VĂ©rifiez si tout fonctionne. AccĂ©dez au rĂ©fĂ©rentiel initialisĂ© prĂ©cĂ©demment. Ajoutez-y le fichier txt vide. AprĂšs cela, nous exĂ©cutons ces commandes sĂ©quentiellement dans Git Bash.
git add . git commit -m "Initial commit" git push -u origin master
Accédez à GitLab sur la page Projet / Détails et vérifiez que tout fonctionne correctement.

3. Création d'un runner GitLab (Shell)
Pour démarrer des projets en poussant vers gitlab, nous devons déployer un runner. GitLab Runner est un agent pour exécuter des instructions à partir d'un fichier spécial .gitlab-ci.yml. Il existe plusieurs types de coureurs. Envisagez d'installer et de lancer l'un des plus simples - un exécuteur de shell.
Shell-runner vous permet d'exĂ©cuter des projets sur la machine oĂč ce runner est installĂ©. Pensez Ă installer ce runner sur notre machine locale:
1. Créez un dossier pour le coureur, par exemple C: \ GitLab-Runner
2. Téléchargez le coureur à partir du lien:
https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-windows-386.exeRenommez-le en gitlab-runner.exe.
3. Exécutez PowerShell en tant qu'administrateur.
4. Accédez à notre dossier:
cd C:\GitLab-Runner
5. Entrez le lien vers GitLab. Dans GitLab, allez dans ParamĂštres-> CI / CD-> Runners.

6. Entrez le jeton:

7. Entrez une description du coureur.
8. Entrez les balises du coureur.
9. Choisissez le type de coureur - shell.
10. Installez le coureur:
gitlab-runner install
11. Et exécutez:
gitlab-runner start
Afin de vérifier que le coureur a démarré, allez dans GitLab -> ParamÚtres -> CI / CD -> Coureurs. Un cercle vert signifie que le coureur court.

4. Définition de la variable d'environnement
Pour exécuter notre programme java, nous avons besoin de:
1. Installez java:
https://java.com/en/download/2. Installez jdk:
https://www.oracle.com/technetwork/java/javase/downloads/index.html3. Définissez les variables d'environnement.
Pour configurer les variables d'environnement, accédez à :
Poste de travail -> Propriétés -> ParamÚtres d'environnement avancés -> Variables d'environnement
Ici, dans la section "Variables systÚme", créez la variable JAVA_HOME, dans la ligne "Valeur variable", écrivez le chemin vers jdk.

Ajoutez cette valeur à la variable Path. Vous devez également vérifier qu'il existe un chemin pour Java.

5. Création du projet et son lancement
Créons un projet java simple qui produira "Hello World!" dans la console. Mettez-le dans notre référentiel local. Cela ressemblera à ceci:

Ici, j'ai créé un fichier .gitlab-ci avec l'extension yml.
Contenu .gitlab-ci.yml image: java:latest stages: - build - execute build: stage: build script: - cd C:\GitAuto\src - javac Main.java artifacts: tags: - first-runner execute: stage: execute script: - cd C:\GitAuto\src - java Main artifacts: tags: - first-runner
Il y a deux étapes - Build et Execute. En utilisant la commande javac, nous compilons le code source et en utilisant la commande java, nous l'exécutons. à chaque étape, nous devons indiquer explicitement quel coureur nous utiliserons. Le coureur sera déterminé par la valeur de sa balise (vous pouvez le voir dans les paramÚtres du coureur dans GitLab).
AprÚs avoir défini le contenu du fichier, accédez au référentiel local et ouvrez Git Bash. Nous commençons à exécuter séquentiellement les commandes:
git add . git commit -m "Initial commit" git push -u origin master
Les modifications sont lancées, nous allons maintenant vérifier que notre programme s'est terminé avec succÚs. Allez dans GitLab -> CI / CD -> Jobs, ouvrez le dernier job:

Le programme est complet, tu es génial!