微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何将哈希表作为 AzureDevops 中的变量从一个任务传递到另一个任务

如何解决如何将哈希表作为 AzureDevops 中的变量从一个任务传递到另一个任务

一个 ADO 任务来部署 arm 模板,并尝试使用我的哈希表中的动态标记(天蓝色图像库图像版本定义名称)来标记 Azure 资源(在下面的第二个任务中使用 arm 模板覆盖参数)。我部署 ARM 模板的第二个任务没有选择我设置的变量。 不确定我做错了什么以及这是否真的可能..

- task: AzurePowerShell@5
  displayName: "Generate Tags"
  inputs:
    azureSubscription: **
    ScriptType: 'Inlinescript'
    Inline: |
      $ImageVersion = (Get-AzgalleryImageVersion -ResourceGroupName $(sig_rg_name) -galleryName $(sig_name) -galleryImageDeFinitionName $(image_name)).name[-1]
      $tags = @{'HostpoolName' = '$(hostpoolName)'; 'ImageVersion' = '$(ImageVersion)'} | ConvertTo-Json -Compress
      Write-Host "##vso[task.setvariable variable=dynamictags]$tags"
## Also tried this construct with no luck:
##  $json = [pscustomobject]@{ prop1 = "value1"; prop2 = "value2" } | ConvertTo-Json -Compress
##  Write-Host "##vso[task.setvariable variable=MYVAR]$json "

- task: AzureResourceManagerTemplateDeployment@3
  displayName: "Build Session Hosts "
  inputs:
    deploymentScope: 'Resource Group'
    azureResourceManagerConnection: **
    subscriptionId: $(SubscriptionID)
    action: 'Create Or Update Resource Group'
    resourceGroupName: $(hostPoolRg)
    location: $(AZlocation)
    templateLocation: 'Linked artifact'
    csmFile: 'ARM Templates/AddVirtualMachinestemplate.json'
    csmParametersFile: 'ARM Templates/AddSessionHostTemplate.parameters_hp.json'
    overrideParameters: '-hostpoolName $(hostPoolName) -hostpoolToken $(hostPoolRegKey) -tags $(dynamictags)'
    deploymentMode: 'Incremental'

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。