将变量传递给jenkins管道中的powershell脚本块

问题描述:

有没有一种方法可以在powershell脚本中使用groovy变量?我的示例脚本如下所示。将变量传递给jenkins管道中的powershell脚本块

node { 
    stage('Invoke Installation') { 
    def stdoutpowershell 
    def serverName = env.fqdn 
    withEnv(['serverName = $serverName']) { 
     echo "serverName : $serverName" 
     stdoutpowershell = powershell returnStdout: true, script: ''' 
      write-output "Server is $env:serverName" 
     ''' 
    } 
    } 
+0

'$ envserverName' - >'$ ENV:serverName' – BenH

+0

@BenH它看起来像我犯了一个小错误而产生的示例代码块。它应该如你所说,所以我已经更新了脚本,但问题不在于此。 –

您不能在单引号或三单引号内插变量。使用三双引号:

stdoutpowershell = powershell returnStdout: true, script: """ 
     write-output "Server is $envserverName" 
    """