It should work if you use double quotes around your agent variable. Variable resolution will not happen within single quotes.

On 5/3/2017 10:58 AM, ishan jain wrote:
I am using declarative syntax to build my pipeline. I am loading several variables from a properties file in the beginning and i now i would like to control the 'on which slave node something executes' via variables. But i cannot figure out how to use variable as a agent label. The following is one of the snippets and like all its other variations, it fails:

|
properties =null

defloadProperties(){
node {
checkout scm
properties =readProperties file:'pipeline.properties'
echo "Immediate one ${properties.repo}"
}
}

pipeline {
   agent none
stages {
stage ('prepare'){
agent any
steps {
script {
loadProperties()
}
}
}
stage('Build'){
agent {label '${properties.agent}'}
steps {
sh 'hostname'
echo properties.repo
}
}
}
}
|


--
You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected] <mailto:[email protected]>. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/4cfff4fb-aa1f-4ad2-9017-d6dcf89a7b36%40googlegroups.com <https://groups.google.com/d/msgid/jenkinsci-users/4cfff4fb-aa1f-4ad2-9017-d6dcf89a7b36%40googlegroups.com?utm_medium=email&utm_source=footer>.
For more options, visit https://groups.google.com/d/optout.

--
Eric Pyle
Siemens PLM Software
Lebanon, NH
+1 603-277-3060
[email protected]
http://www.siemens.com/plm

--
You received this message because you are subscribed to the Google Groups "Jenkins 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/3dff065d-8b81-78fc-8ce5-ccd98b533ee9%40cd-adapco.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to