【问题标题】:How do I access a custom variable from an azure build pipeline in an azure release pipeline? [duplicate]如何从 azure 发布管道中的 azure 构建管道访问自定义变量? [复制]
【发布时间】:2020-08-11 23:15:03
【问题描述】:

我添加了这样的自定义变量:

  - task: Bash@3
    displayName: 'naming the artifact'
    inputs:
      targetType: 'inline'
      script: |
        an=FE_SNAPSHOT.zip
        echo "##vso[task.setvariable variable=artifactName;]$an"

现在我在部署管道中,想在部署 bash 脚本中访问变量 artifactName

变量未在“初始化作业”步骤中列出。

更新 1: 部署管道有一个到构建管道的触发器,并且构建管道链接为一个工件(在工件部分)。也许这是另一个问题...

解决方案: 链接的票包含我的解决方案的一部分。 BUILD PIPELINE 创建一个包含我要存储的值/变量的简单文件:

  - task: Bash@3
    displayName: 'naming the artifact'
    inputs:
      targetType: 'inline'
      script: echo "FE_SNAPSHOT.zip" > $(Build.ArtifactStagingDirectory)/artifactName.value

部署管道读取文件并设置变量:

  - task: Bash@3
    displayName: 'naming the artifact'
    inputs:
      targetType: 'inline'
      script: |
        an=`cat FE_CI_OS/drop/artifactName.value`
        echo "##vso[task.setvariable variable=artifactName;]${an}"

那么就可以在下一个任务中使用$(artifactName)

【问题讨论】:

标签: variables build azure-devops release


【解决方案1】:

这个变量的作用域是一个管道。由于这个变量是动态设置的,它没有在 Initialize Job 中列出。它应该在您的下一个任务中可用。你能在这个任务之后添加吗

- script: echo $(artifactName)

你应该显示你的价值。

【讨论】:

  • “您的构建管道引用了一个名为‘artifactName’的未定义变量。”
  • 只是另一个提示:“在此任务之后”将在构建管道中。我需要链接部署管道中的变量!可能是误会!?
  • 所以你想在构建管道中设置变量并在发布管道中重用它吗?您使用多阶段 Yaml 管道还是经典的发布管道?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-04-29
  • 2020-06-16
  • 2021-05-03
相关资源
最近更新 更多