小编Ste*_*lon的帖子

Azure Devops - 为每个部署环境创建映射变量

部署微服务时,我需要从 Azure 安全文件存储下载证书文件。我有大约十几个微服务,每个微服务大约有 6 个生命周期/环境。证书名称不遵循严格的命名约定。我想创建一个变量 hashmap/map/关联数组。

我尝试将这些作为参数输入 azure-pipeline.yaml

- name: sslCerts
  type: object 
  default:
  - environmentName: Development
    sslCertificate: service1-dev.p12
    sslCertificateKey: service1-dev
  - environmentName: Sandbox
    sslCertificate: service1-sbxdev.p12
    sslCertificateKey: service-sbxdev-key
Run Code Online (Sandbox Code Playgroud)

但我不知道如何取消引用它们:

jobs: 
  # ######################## Stage: Terraform Plan and Apply in Dev ########################
  - template: ../azure-pipelines-template/apply-stages.yml
    parameters:
      sslCertificate: ${{ parameters.sslCerts[${{ parameters.envName }} ].sslCertificate)

Run Code Online (Sandbox Code Playgroud)

然后我尝试使用计划“B”编写一个 powershell 脚本来输出简单变量。由于 DownLoadSecureFile 任务在作业开始运行之前出现错误(未找到安全文件)而失败。所以下面的代码永远没有机会运行。

$DeploymentPath = $args[0]

$certs = @{
    Sandbox = {
        certName = "sbx-cert"
        certKey  = "sbx-cert-key"
    }
    Development = {
        certName = "dev-cert"
        certKey  = "dev-cert-key" …
Run Code Online (Sandbox Code Playgroud)

yaml azure-devops

4
推荐指数
1
解决办法
4755
查看次数

标签 统计

azure-devops ×1

yaml ×1