Paramètres JenkinsFile

Paramètres JenkinsFile

Un JenkinsFile est un fichier texte qui contient la définition d'un pipeline Jenkins et est vérifié dans le contrôle de la source. Il est utilisé pour automatiser les parties du pipeline CI / CD, définissant des tâches et des paramètres que Jenkins peut utiliser pour exécuter ces tâches.

Une façon de paramétrer un JenkinsFile est d'utiliser des paramètres. Les paramètres vous permettent de transmettre des données dans un JenkinsFile au moment de l'exécution. Cela peut être utile pour les configurations spécifiques à l'environnement ou le transfert de valeurs spécifiques à la construction actuelle.

Dans ce tutoriel, vous apprendrez à utiliser les paramètres JenkinsFile dans un pipeline Jenkins.

Exigences:

  1. Connaissance de base de Jenkins et du plugin de pipeline Jenkins
  2. Une instance Jenkins avec le plugin de pipeline Jenkins installé
  3. Un JenkinsFile dans votre référentiel de contrôle source

Jenkins déclare les paramètres

Avant d'utiliser des paramètres dans un Jenkinsfile, nous devons d'abord les déclarer dans le Jenkinsfile. Nous pouvons y parvenir en utilisant le bloc de paramètres.

Prenons par exemple la section du pipeline ci-dessous:

pipeline
paramètres
String (nom: «Environment», defaultValue: «Dev», Description: «L'environnement à déployer vers»)
booléen (nom: «déploiement», defaultValue: False, Description: «Que ce soit pour déployer ou non»)


Dans l'exemple ci-dessus, le JenkinsFile contient deux paramètres comme:

  1. ENVIRONNEMENT - un paramètre de chaîne avec une valeur par défaut de 'Dev.'
  2. DÉPLOYER - un paramètre booléen avec une valeur par défaut de faux.

Nous pouvons spécifier n'importe quel nombre de paramètres dans le bloc de paramètres. Jenkins prend en charge divers types de paramètres, notamment:

  1. Types de paramètres de chaîne - utilisé pour stocker une séquence de caractères
  2. Paramètres du texte - Similaire au type de paramètre de chaîne mais peut s'étendre sur plusieurs lignes. Un exemple est un paramètre de description, comme indiqué dans l'exemple précédent.
  3. Booleanparam - Booleanparam ou Booléen est utilisé pour stocker la vérité ou les valeurs de fausseté.
  4. Choix - Les paramètres de choix, en revanche, vous permettent de stocker des valeurs de choix multiples.
  5. Mot de passe - Les paramètres de mot de passe sont utilisés pour stocker les mots de passe et les informations d'identification d'authentification.

Paramètres d'accès Jenkins

Une fois que nous avons déclaré vos paramètres dans le JenkinsFile, nous pouvons accéder à leurs valeurs en utilisant l'objet $ params.

Par exemple, pour accéder à la valeur du paramètre d'environnement dans une étape, nous pouvons utiliser $ params.ENVIRONNEMENT.

Exemple de démonstration

Prenez l'exemple de pipeline ci-dessous qui montre comment utiliser divers types de paramètres dans Jenkins:

pipeline
agent
paramètres
String (nom: «name», defaultValue: «Jenkins», Description: «Nom d'utilisateur»)
Texte (nom: «desc», defaultValue: », Description:« Description de l'utilisateur. ')
booleanparam (nom: «toggle», defaultValue: true, Description: «Activer / désactiver»)
Choix (nom: «choix», choix: [1,2,3,4,5], description: «Choisissez une valeur»)
Mot de passe (Nom: «Passwd», DefaultValue: «Secret», Description: «Fournir un mot de passe»)

étapes
étape ('exemple')
pas
Echo "Hello $ params.nom"
Echo "Desc: $ params.desc "
écho "basculer: $ params.basculer"
Echo "Choix: $ params.choix"
Echo "Mot de passe: $ params.passwd "



Sortir:

Jenkins a défini la valeur

Dans un JenkinsFile déclaratif, nous pouvons définir une valeur d'un paramètre donné comme indiqué dans l'exemple ci-dessous:

pipeline
paramètres
String (nom: «Environment», defaultValue: «Dev», Description: «L'environnement à déployer vers», valeur: «prod»)

Dans cet exemple, le paramètre d'environnement sera toujours défini sur «prod» lors de l'exécution de la construction.

Lorsque vous travaillez dans un JenkinsFile scénarisé, nous pouvons définir la valeur d'un paramètre donné en utilisant la commande de construction. Un exemple de démonstaration est tel que montré:

Node

stage ('deploy')
Build Job: 'Deploy', Paramètres: [[$ class: 'StringParameTervalue', Name: 'Environment', Value: 'prod']]

Dans ce cas, la valeur du pipeline de la variable d'environnement est toujours définie pour produire.

Définition de la valeur par défaut du paramètre

C'est une bonne idée de définir des valeurs par défaut pour les paramètres définis si la valeur n'est pas fournie pendant le processus de construction. Nous pouvons y parvenir en utilisant le paramètre defaultValue comme indiqué dans l'exemple ci-dessous:

paramètres
String (nom: «Environment», defaultValue: «Dev», Description: «L'environnement à déployer vers»)

Dans ce cas, le paramètre d'environnement sera par défaut «Dev» si une valeur n'est pas fournie pendant la construction.

Conclusion

Dans cet article, vous avez découvert comment utiliser les paramètres JenkinsFile dans un pipeline Jenkins. Vous avez appris à déclarer des paramètres dans le JenkinsFile, à accéder à leurs valeurs par étapes et à définir la valeur du paramètre pendant le processus de construction. Enfin, nous avons découvert comment utiliser le paramètre defaultValue pour attribuer une valeur par défaut.

En utilisant les paramètres de JenkinsFile, nous pouvons rendre notre pipeline Jenkins plus flexible et plus facile à personnaliser pour différents environnements et cas d'utilisation.