我想在power shell脚本中使用jenkins环境变量。这里的$ {destination}在powershell脚本中变为null。无法识别我正在做的错误。请帮助
管道{
agent {
label {
label ""
customWorkspace "C:\\Jenkins\\workspace"
}
}
environment {
def destination=''
}
options {
timestamps()
timeout(time: 60, unit: 'MINUTES')
skipDefaultCheckout(true)
disableConcurrentBuilds()
}
stages {
stage('TEST')
{
steps {
script{
destination="\\\\SERVERNAME\\d\$"
}
echo "${destination}"
powershell '''
$destinationPath ="${destination}"
write-host $destinationPath
write-host "test3" '''
}
}
}
post {
always {
deleteDir()
}
}
答案 0 :(得分:2)
您可以使用以下两种方法之一解决此问题,以最适合您的方式:
使用“”而不是'''能够用destination
替换它的值。使用这种方法时,你应该转义Powershell的变量标识符,以避免不必要的替换,如:{{1 }}
将Jenkins变量导出为环境变量:
\$destinationPath = "${destination}"