18
0
Fork 0

HowtoJenkins: Document agents

This commit is contained in:
David Prevot 2022-04-28 18:20:11 +02:00
parent ec1b8a70b7
commit 21b118b963
1 changed files with 58 additions and 0 deletions

View File

@ -166,3 +166,61 @@ Il faut configurer le ProxyPass avec l'option _nocanon_ comme ceci :
</Location>
~~~
## Agents
Lexécution des tests ne devrait pas être réalisée sur le nœud intégré,
il faut donc paramétrer des agents, qui seront connectés au contrôleur
dont linstallation vient dêtre décrite.
Cest sur ces nœuds que sexécuterons effectivement les tests.
### Installation
Daprès le [projet amont](https://www.jenkins.io/doc/book/using/using-agents/#environment),
Java est nécessaire pour faire fonctionner les agents (mais il y a moyen
de sen passer comme décrit par
[Debian](https://salsa.debian.org/qa/jenkins.debian.net/-/blob/master/INSTALL).
Docker est pratique aussi pour certaines constructions.
~~~
# apt install default-jre-headless docker.io
~~~
### Configuration
Création de lutilisateur que linstance principale contactera pour
exécuter les tests.
~~~
# adduser --disabled-password jenkins
# sudo addgroup jenkins docker
~~~
Ajouter la partie publique de la clef configurée précédemment à
`~jenkins/.ssh/authorized_key`. Il peut être intéressant de vérifier
que lon arrive bien à se connecter depuis le contrôleur à lagent
par SSH dès maintenant.
#### Déclarer lagent dans le contrôleur
Le nœud peut maintenant être ajouté depuis linterface web de Jenkins.
~~~
Build Executor Status (en bas à gauche)
> New node (en haut à gauche)
> Node name (configurer un nom explicite, par exemple celui de la machine)
> Type > Permanent Agent
> Create
> Remote root directory > /home/jenkins
> Launch method > Launch agents via SSH
> Host > nom de la machine (FQDN)
> Crédentials > Add
> Kind > SSH Username with private key
> Username > jenkins
> Private key > Enter directly > Add > La clef privée déjà créé sur la machine
> Save
~~~
Maintenant que le nœud est créé, il est possible de configurer une forge
contenant les dépôts que lon souhaite tester.