将构建变量传递给 Azure DevOps 中的 powerhshell 内联脚本

kum*_*mar 6 azure-devops

我已经设置了我想在我的内联 powershell 脚本中使用的构建变量。

我试过 $($myvariable) 但结果是空白的

Leo*_*SFT 7

将构建变量传递给 Azure DevOps 中的 powerhshell 内联脚本

要使用内联 power shell 脚本获取构建变量,您可以尝试使用以下语法$env:variable:

$env:myvariable
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

构建变量:

在此处输入图片说明

构建结果:

在此处输入图片说明

注意:目前,$(myvariable$(Build.SourceBranchName))构建管道中尚不支持构建变量表上的嵌套变量(如)的值。

希望这可以帮助。


4c7*_*b41 5

这对我有用:

$(variableName)
Run Code Online (Sandbox Code Playgroud)

例如,可以像这样访问名为 Build.BuildNumber 的内置变量:

$(Build.BuildNumber)
Run Code Online (Sandbox Code Playgroud)

带有格式函数的完整示例:

- task: AzurePowerShell@3
  displayName: UpdatePrereq
  inputs:
    azureSubscription: ${{ parameters.azureSubscription }}
    ScriptType: InlineScript
    Inline: |
        ${{ format('. $(Build.Repository.LocalPath)\scripts\_helpers.ps1
        Update-DeploymentPrereq -resourceGroup {1} -location {3}
        Update-Prereq -pathSuffix {0} -pathBase $(Build.Repository.LocalPath) -resourceGroup {1} -buildId $(Build.BuildNumber) -paramFile {2}
        Update-DeploymentConcurrency -resourceGroup {1} -buildId $(Build.BuildNumber)',
            parameters.buildDir, parameters.resourceGroupName, parameters.paramFile, parameters.location ) }}
    azurePowerShellVersion: LatestVersion
Run Code Online (Sandbox Code Playgroud)