71 lines
1.9 KiB
Markdown
71 lines
1.9 KiB
Markdown
---
|
||
categories: dev
|
||
title: Howto Jenkins
|
||
...
|
||
|
||
* Documentation : <https://jenkins.io/doc/>
|
||
|
||
Jenkins est un outil open source d'intégration continue qui est écrit
|
||
en Java, Jenkins peut fonctionner dans un conteneur de servlets tel
|
||
qu’Apache Tomcat, ou en mode autonome avec son propre serveur Web
|
||
embarqué.
|
||
|
||
# *Installation*
|
||
|
||
Jenkins n’est pas disponible dans les dépôts Debian, il faut donc ajouter le dépôt comme suit:
|
||
|
||
|
||
~~~
|
||
wget -q -O - https://jenkins-ci.org/debian/jenkins-ci.org.key | sudo apt-key add -
|
||
sudo sh -c 'echo deb http://pkg.jenkins-ci.org/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list'
|
||
~~~
|
||
|
||
Ensuite on procède à l’installation:
|
||
|
||
~~~
|
||
# apt update
|
||
apt install jenkins
|
||
~~~
|
||
|
||
|
||
# *Configuration*
|
||
|
||
Par défaut Jenkins utilise le port 8080, pour modifier cela, il faut modifier le fichier /etc/default/jenkins et modifier la ligne suivante:
|
||
|
||
~~~
|
||
HTTP_PORT=8080
|
||
~~~
|
||
|
||
Le */home* de jenkins se trouve dans:
|
||
|
||
~~~
|
||
/var/lib/jenkins/
|
||
~~~
|
||
|
||
Il faut créer par exemple la clé ssh de jenkins dans ce répertoire, en se connectant avec l'utilisateur jenkins en faisant:
|
||
|
||
~~~
|
||
su - jenkins
|
||
~~~
|
||
|
||
Puis générer la clé SSH.
|
||
|
||
## Modifier le repertoire temporaire de Jenkins
|
||
|
||
Souvent la partition /tmp est en noexec, ce qui pose des problèmes a Jenkins lors d'un clonage de dépôt où il y a besoin d’exécuter un script sh
|
||
|
||
On peut modifier le dossier tmp dans */var/lib/jenkins/tmp* et bien donner comme propriétaire *jenkins:jenkins* au dossier *tmp*
|
||
|
||
Il faut ensuite mettre la configuration suivant dans */etc/default/jenkins* :
|
||
|
||
~~~
|
||
# use a different tmpdir for jenkins
|
||
JAVA_ARGS="$JAVA_ARGS -Djava.io.tmpdir=/var/lib/jenkins/tmp/"
|
||
~~~
|
||
|
||
Pour le que dossier *tmp* soit vider au redémarrage de la machine, comme un vrai dossier /tmp, il faut le monter en *tmpfs* dans */etc/fstab* :
|
||
|
||
~~~
|
||
tmpfs /var/lib/jenkins/tmp tmpfs defaults,nosuid,nodev,size=1024m 0 0
|
||
~~~
|