2 votes

Jenkins Multibranch Pipelines - Configurer les propriétés dans les branches ?

Nous avons réussi à mettre en place un pipeline de construction en utilisant le plugin Jenkins Multibranch Pipeline, qui fonctionne très bien la plupart du temps, mais nous avons ce problème qui nous tracasse : L'option Jenkinsfile contient un ensemble de propriétés, qui apparaissent également dans l'interface utilisateur, mais comment puis-je définir des valeurs par défaut pour les différentes branches ?

Voici à quoi ressemblent les définitions des propriétés dans notre Jenkinsfile :

properties([
    parameters([
        string(defaultValue: 'somevalue', description: 'Some description', name: 'SOME_VALUE'),
        string(defaultValue: 'asdfasdfasdfasdfdasdasdasdasd...', description: 'Client ID', name: 'TEST_CLIENT_ID'),
        // ... more properties
        string(defaultValue: '', description: 'Enter non-empty value to skip tests', name: 'SKIP_TESTS'),
    ]), 
    [$class: 'RebuildSettings', autoRebuild: true, rebuildDisabled: false],
    pipelineTriggers([])
])

J'ai bien un "Show Configuration" pour chaque branche du pipeline de construction (les pipelines sont générés automatiquement), et je peux entrer des valeurs lorsque je fais un "Build with parameters", mais je n'arrive pas à sauvegarder les valeurs par défaut de la branche ? Il n'y a tout simplement pas de bouton "Save" pour cela.

Avons-nous mal configuré Jenkins, ou dois-je faire cela ailleurs ? Ce que je souhaite, c'est pouvoir définir des valeurs par défaut pour les propriétés par branche.

Versions installées :

  • Version de Jenkins : 2.19.4
  • Version du plugin Multibranch Pipeline : 2.9.2

1voto

Lee Meador Points 7902

Vous pouvez utiliser le formulaire avec la chaîne de caractères entre guillemets doubles

string(defaultValue: "branch-${env.GIT_BRANCH}", description: 'Some description', name: 'SOME_VALUE')

en fixant les valeurs par défaut des paramètres (comme vous le décrivez dans votre question)

Il est limité par le fait que lorsque l'étape "propriétés" est exécutée dans une version, elle définit les paramètres par défaut qui apparaissent dans la version suivante. En effet, la saisie des paramètres est effectuée avant même que le fichier Jenkins ne soit disponible.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X