Jenkins, Installation d’un outil d’intégration continue

Dans ce tutoriel, nous apprendrons pourquoi et comment installer Jenkins, un système d’intégration continue.

upidev-jenkins

Introduction à l’intégration continue

L’intégration continue est un ensemble de pratiques utilisées en génie logiciel consistant à vérifier à chaque modification de code source que le résultat des modifications ne produit pas de régression dans l’application développée ( Source : Wikipédia).

Vous pouvez trouver ci-dessous un récapitulatif des avantages/inconvénients trouvés sur la toile.

Avantages

  • Réduction du temps de développement ( détection plus rapide des bugs )
  • Automatisation des tests fournis et du déploiement ( qui peut prendre plusieurs heures sur de grands projets).
  • Donne un aperçu de l’avancé du projet

Inconvénients

  • Mise en place peut être fastidieuse pour un non-développeur. Des solutions cloud existent pour éliminer ce problème telles que Shippable et Snap-ci
  • Nécessite un collaborateur compétent sur l’outil d’intégration continu.
  • Engendre des coûts supplémentaires

Installation de Java 8

Afin d’installer Java 8, vous pouvez suivre cette procédure en ouvrant un terminal sur Ubuntu.

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer
# Change the current version to java 8
sudo update-alternatives --config java

Installation de Jenkins

Ensuite, collez les commandes suivantes et procédez à l’installation.

wget -q -O - https://pkg.jenkins.io/debian/jenkins-ci.org.key | sudo apt-key add -
sudo sh -c 'echo deb http://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list'
sudo apt-get update
sudo apt-get install jenkins

Configuration

Afin d’autoriser les ordinateurs du réseau local à accéder au serveur d’intégration continu, le fichier de configuration doit être modifié.

# Just before HTTP_PORT
HTTP_HOST = 192.168.1.55 # Server IP address

# Add httpListenAddress in config arguments
JENKINS_ARGS="--webroot=/var/cache/$NAME/war --httpListenAddress=$HTTP_HOST --httpPort=$HTTP_PORT"

Pour autoriser Jenkins à récupérer des projets depuis un serveur git privée en local, vous pouvez suivre la procédure optionelle suivante.


A = Jen kins server
B = Git server
# From A
    ssh-keygen -t rsa

# From B
    # ex : B = 192.168.1.89
    ssh user@B mkdir -p .ssh

# From A
    # Allow A to access freely to B
    cat .ssh/id_rsa.pub | ssh user@B 'cat >> .ssh/authorized_keys'

# Give to A authentication keys
    sudo su jenkins
    cp ~/.ssh/* /var/lib/jenkins/.ssh/

# Test the automatic authentication
    ssh user@B

Premier démarrage

Si l’installation se déroule correctement, un mot de passe admin est généré, il est utilisé au premier démarrage pour vous authentifier et récupérable dans le fichier ci-dessous.

sudo vim /var/log/jenkins/jenkins.log

# Vim command to find the password surrounded by *
/\%u002A

Un écran de chargement apparait, puis deux choix sont proposées, choisissez le second. Ainsi, vous installerai seulement les plugins qui vous intéressent.

A présent, une fenêtre vous invite à créer un complte administrateur, complétez les champs et terminez l’installation.

Félicitations, le tutoriel se termine. Dans un prochain article, nous apprendrons à créer un job afin d’automatiser les tests pour un projet Python.

Laisser un commentaire