Configuration de projets Freestyle de base

JenkinsBeginner
Pratiquer maintenant

Introduction

Bienvenue dans ce laboratoire consacré à la configuration de projets Freestyle de base dans Jenkins. Le projet Freestyle est une option très flexible et facile à utiliser dans Jenkins, adaptée à tout type de projet. Il vous permet de configurer des déclencheurs de build, des étapes de build et des actions post-build via une interface graphique web.

Dans ce laboratoire, vous apprendrez à :

  • Ajouter des étapes de build basées sur des commandes shell à un projet.
  • Planifier l'exécution automatique des builds à l'aide de déclencheurs.
  • Archiver les artefacts de build pour une utilisation ultérieure.
  • Configurer des actions post-build telles que le nettoyage de l'espace de travail.

Une instance Jenkins est déjà en cours d'exécution et un projet Freestyle de base nommé sample-project a été créé pour vous. Vous pouvez accéder à l'interface web de Jenkins en ouvrant le navigateur Firefox sur le bureau. Le navigateur s'ouvrira automatiquement sur http://localhost:8080, vous n'avez donc pas besoin de saisir l'URL manuellement. Aucune connexion n'est requise.

Ajouter une étape de build

Dans cette étape, vous allez ajouter une étape de build à votre projet Freestyle. Les étapes de build constituent le cœur d'un projet ; elles définissent les actions que Jenkins doit effectuer, comme compiler du code, exécuter des tests ou lancer des scripts shell.

Tout d'abord, accédons à la page de configuration du projet.

  1. Ouvrez le navigateur Firefox depuis l'interface du bureau. Le navigateur s'ouvrira automatiquement sur http://localhost:8080. Aucune connexion n'est requise.
  2. Sur le tableau de bord Jenkins, vous verrez le projet sample-project. Cliquez sur son nom pour accéder à la page du projet.
  3. Dans le menu de gauche, cliquez sur Configure.

Page du projet Jenkins

Vous êtes maintenant sur la page de configuration du projet. Ajoutons une étape de build.

  1. Faites défiler jusqu'à la section Build Steps.
  2. Cliquez sur le bouton déroulant Add build step et sélectionnez Execute shell.

Section Build Steps

  1. Une zone de texte apparaîtra. Saisissez les commandes suivantes dans la zone Command :
echo "Building the project..."
date
echo "Build complete."
  1. Cliquez sur le bouton Save en bas de la page.

Vous avez maintenant configuré une étape de build. Exécutons le build pour le voir en action.

  1. Sur la page du projet, cliquez sur Build Now dans le menu de gauche.
  2. Un nouveau build apparaîtra dans la section Build History. Cliquez sur le numéro du build (par exemple, #1).
  3. Dans le menu de gauche de ce build, cliquez sur Console Output.

Vous verrez la sortie des commandes shell que vous avez ajoutées, confirmant que votre étape de build a été exécutée avec succès.

Started by user admin
Running as SYSTEM
Building in workspace /var/jenkins_home/workspace/sample-project
[sample-project] $ /bin/sh -xe /tmp/jenkins12345.sh
+ echo 'Building the project...'
Building the project...
+ date
Tue Jan 1 12:00:00 UTC 2024
+ echo 'Build complete.'
Build complete.
Finished: SUCCESS

Planifier des builds avec des déclencheurs

Dans cette étape, vous apprendrez à planifier automatiquement des builds à l'aide de déclencheurs. Il s'agit d'une fonctionnalité fondamentale pour l'intégration continue, vous permettant d'exécuter des builds périodiquement.

  1. Revenez à la page de configuration de sample-project (Page du projet > Configure).
  2. Recherchez la section Triggers.
  3. Cochez la case Build periodically.

Section Triggers

  1. Une zone de texte Schedule apparaîtra. Ce champ utilise la syntaxe cron pour définir le calendrier. La syntaxe se compose de 5 champs séparés par des espaces : MINUTE HOUR DAYOFMONTH MONTH DAYOFWEEK.
  2. Pour exécuter le build environ toutes les minutes, saisissez ce qui suit dans le champ Schedule :
* * * * *

Cette expression cron signifie "exécuter chaque minute". Bien que Jenkins prenne en charge le symbole H pour la distribution de la charge, H/1 * * * * s'exécute en réalité une fois par heure, et non chaque minute. Pour une exécution réelle chaque minute, utilisez * * * * *.

  1. Cliquez sur Save.

Jenkins déclenchera désormais automatiquement un nouveau build pour sample-project environ une fois par minute. Vous pouvez l'observer en surveillant le Build History sur la page du projet.

Archiver les artefacts de build

Dans cette étape, vous apprendrez à archiver les artefacts de build. Les artefacts sont les fichiers de sortie produits par un build, tels que des binaires compilés ou des rapports. Les archiver les rend disponibles au téléchargement une fois le build terminé.

Tout d'abord, nous devons modifier notre étape de build pour créer un fichier que nous pourrons archiver.

  1. Accédez à la page de configuration de sample-project.
  2. Faites défiler jusqu'à la section Build Steps et recherchez votre zone de commande Execute shell.
  3. Ajoutez une nouvelle ligne au script pour créer un fichier nommé build-info.txt. La variable $BUILD_NUMBER est une variable d'environnement fournie par Jenkins qui contient le numéro du build actuel.
echo "Building the project..."
date
echo "Build complete."
echo "This artifact is from build #$BUILD_NUMBER" > build-info.txt

Ensuite, configurons une action post-build pour archiver ce fichier.

  1. Faites défiler jusqu'à la section Post-build Actions.
  2. Cliquez sur le menu déroulant Add post-build action et sélectionnez Archive the artifacts.

Menu déroulant Add post-build action

  1. Dans le champ Files to archive, saisissez le nom du fichier que vous souhaitez archiver : build-info.txt. Vous pouvez également utiliser des caractères génériques comme **/*.jar pour archiver plusieurs fichiers.
  2. Cliquez sur Save.

Configuration de l'archivage des artefacts

Maintenant, lancez un nouveau build en cliquant sur Build Now. Une fois le build terminé :

  1. Cliquez sur le numéro du dernier build dans le Build History.
  2. Sur la page d'état du build, vous verrez une section appelée Build Artifacts avec un lien vers build-info.txt. Vous pouvez cliquer dessus pour afficher ou télécharger le fichier.

Page du build terminé

Configurer le nettoyage de l'espace de travail

Dans cette dernière étape de configuration, vous ajouterez une action post-build pour nettoyer l'espace de travail. C'est une bonne pratique pour économiser de l'espace disque et garantir que chaque build démarre dans un environnement propre, évitant ainsi les interférences avec des fichiers générés lors de builds précédents.

  1. Accédez à la page de configuration de sample-project.
  2. Faites défiler jusqu'à la section Post-build Actions.
  3. Cliquez sur le menu déroulant Add post-build action et sélectionnez Delete workspace when build is done.

Menu déroulant Add post-build action

  1. Cliquez sur Save.

Configuration du nettoyage de l'espace de travail

Désormais, une fois que chaque build de sample-project est terminé, Jenkins supprimera tous les fichiers du répertoire de l'espace de travail. Notez que les artefacts archivés sont stockés séparément et ne sont pas affectés par le nettoyage de l'espace de travail. Cela garantit que vos artefacts de build restent disponibles tout en maintenant l'environnement de build propre pour la prochaine exécution.

Résumé

Félicitations pour avoir terminé ce laboratoire. Vous avez appris avec succès les fondamentaux de la configuration d'un projet Jenkins Freestyle.

Dans ce laboratoire, vous avez pratiqué :

  • L'ajout d'une commande Execute shell comme étape de build.
  • La configuration d'un Build Trigger pour planifier des builds périodiquement à l'aide de la syntaxe cron.
  • La création et l'archivage d'artefacts de build.
  • La configuration d'une Post-build Action pour supprimer l'espace de travail après un build.

Ce sont des compétences essentielles pour automatiser vos processus de build, de test et de déploiement avec Jenkins. Vous pouvez désormais appliquer ces concepts pour créer et gérer vos propres pipelines CI/CD.