Bien que cela puisse être utile lorsque vous travaillez avec quelques commandes, cela peut rapidement devenir fatigant et difficile à gérer lorsque vous travaillez avec plusieurs commandes ou copies du même pipeline Jenkins.
Dans ce tutoriel, nous apprendrons à éliminer un tel problème en ajoutant nos commandes dans un script shell, que ce soit un script PowerShell ou un script bash. Nous allons ensuite discuter de la façon dont nous pouvons dire à Jenkins de charger le script shell et d'exécuter les commandes définies dans le fichier.
Exigences
Pour ce tutoriel, nous utilisons ce qui suit:
Étape 1: Préparez votre script de shell
La première étape consiste à vous assurer que votre script shell est prêt sur l'agent Jenkins. Ensuite, nous créons un script de shell simple pour ce tutoriel sur l'agent Debian 11.
Connectez-vous dans votre agent Jenkins:
$ ssh debian @ 172.23.177.251
Une fois connecté, nous devons créer un script shell que nous souhaitons utiliser dans notre pipeline Jenkins.
$ CD / Home / Debian
$ touch myscript.shot
Modifiez le script shell et ajoutez la fonction de votre script shell. Pour ce tutoriel, nous obtenons la liste des fichiers et répertoires à l'aide de awk.
$ vim myscript.shot
Nous pouvons ensuite ajouter le script comme indiqué dans ce qui suit:
#!/ bac / bash
ls -la | awk 'print $ 9'
Le script précédent est un script simple qui appelle la commande LS -LA et passe la sortie à awk. Awk imprime alors la valeur à la position spécifiée.
L'étape suivante consiste à s'assurer que le shell a exécuté des autorisations. Nous pouvons le faire en exécutant la commande CHMOD suivante:
$ chmod + x myscript.shot
Avant d'exécuter le script sur le pipeline Jenkins, vous pouvez exécuter le script sur la machine locale pour vous assurer que le script fonctionne comme prévu.
Étape 2: Configuration d'un travail Jenkins
Une fois que nous aurons terminé, revenons au contrôleur Jenkins et configurons un travail qui utilise le script défini.
Sélectionnez «nouvel élément» sur le tableau de bord Jenkins pour créer un nouveau travail. Donnez un nom au travail et sélectionnez le type de travail comme «pipeline».
Accédez à la section du pipeline et ajoutez un script de pipeline comme indiqué dans les éléments suivants:
pipeline
agent label 'debian'
étapes
étape ('Exécuter le script')
pas
sh '/ home / debian / myscript.sh '
Cliquez sur «Enregistrer» pour appliquer le script et sélectionnez «Build maintenant» dans le volet gauche pour permettre à Jenkins de créer le travail.
Sur le numéro de construction, sélectionnez la sortie de la console pour voir le processus de construction pour le travail invoqué.
Conclusion
Vous avez maintenant réussi à invoquer un script shell d'un pipeline Jenkins en quelques étapes.