web-dev-qa-db-fra.com

comment accéder aux variables d'environnement Jenkins avec DSL?

Comme le dit la question. Je ne peux pas y accéder.

Essais:

#1:

def env = System.getenv()
def BUILD_NUMBER= env["BUILD_NUMBER"]

Résultat: 

Null lorsque j'accède à BUILD_NUMBER

# 2:

def BUILD_NUMBER= params["BUILD_NUMBER"]

Résultat: 

Null lorsque j'accède à BUILD_NUMBER Cette solution fonctionne toutefois pour les variables d'environnement que je crée.

11
Cher

Découvrez la réponse: build.environment.get("BUILD_NUMBER")

11
Cher

Juste pour vous faire savoir que j'ai essayé avec 

def foo = build.buildVariableResolver.resolve("FOO")
println "FOO=$foo" 

Cela a fonctionné . Reportez-vous à l'exemple ici https://wiki.jenkins-ci.org/display/JENKINS/Groovy+plugin

4
Mohit Arora

Cela fonctionnera avec les versions récentes de Jenkins et du plugin DSL:

def BUILD_NUMBER = getBinding().getVariables()['BUILD_NUMBER']
1
Alex O
echo 'Build No: ' + env.BUILD_NUMBER + '. Build URL: ' + env.BUILD_URL

Liste des variables d'environnement accessibles via: http: //Host/PATH_TO_JENKINS/env-vars.html/

par exemple, http: // localhost: 8888/jenkins/env-vars.html/

0
kylestephens

Jenkins ver. 2.138.2

def gitUrl = binding.variables.get ("GITLAB_URL")

0
radzserg