如何将参数传递给jenkins管道中的powershell脚本
问题描述:
如何将我的变量VAR_A传递到jenkins管道中的嵌入式powershell脚本?如何将参数传递给jenkins管道中的powershell脚本
例如
def VAR_A = 'test'
def mystatus = powershell(returnStatus: true, script: '''
Write-Host "My result: '$VAR_A'" '''
withEnv(["VAR_A=test"]) {
def mystatus = powershell(returnStatus: true, script: '''
Write-Host "My result: '$VAR_A'" '''
}
两个结果与下面的输出 我的结果是:“”
注:我喜欢来定义jenkinsfile让事情变得简单我的PowerShell脚本。
答
试试这个:
node {
powershell '''
$VAR_A = 'test'
Write-Host "My result: '$VAR_A'"
'''
withEnv(["VAR_A=envtest"]) {
powershell '''
Write-Host "My result is empty: '$VAR_A'"
Write-Host "My env result: '$env:VAR_A'"
'''
}
}
输出是:
My result: 'test'
My result is empty: ''
My env result: 'envtest'
这是对詹金斯2.73.1测试。
需要注意的是:
-
$VAR_A = 'test'
距离第一powershell '''...'''
-
env:
宣布进入环境变量(见about_Environment_Variables在微软文档)
+0
Thanks t他的作品。 – NicolasW
尝试这是必需的:高清mystatus =的PowerShell (returnStatus:true,script:“”“Write-Host \”我的结果:\“$ VAR_A”“”。对于env var使用$ env:VAR_A – dsaydon
这是正确的:$ env:VAR_A。谢谢 – NicolasW