azure-sdk-for-cpp/eng/common/TestResources/build-test-resource-config.yml
Azure SDK Bot 80b6fc6022
Fail fast on variable conflicts with subscription config (#4915)
Co-authored-by: Ben Broderick Phillips <bebroder@microsoft.com>
2023-08-25 15:22:14 -04:00

47 lines
1.6 KiB
YAML

parameters:
- name: SubscriptionConfiguration
type: string
default: $(sub-config-azure-cloud-test-resources)
- name: SubscriptionConfigurations
type: object
default: null
# EnvVars is used to help diagnose variable conflict issues early
- name: EnvVars
type: object
default: null
steps:
- ${{ if parameters.SubscriptionConfiguration }}:
- pwsh: |
$config = @'
${{ parameters.SubscriptionConfiguration }}
'@ | ConvertFrom-Json -AsHashtable
. ./eng/common/TestResources/SubConfig-Helpers.ps1
SetSubscriptionConfiguration $config
displayName: Initialize SubscriptionConfiguration variable
${{ if parameters.EnvVars }}:
env: ${{ parameters.EnvVars }}
- ${{ if parameters.SubscriptionConfigurations }}:
- pwsh: |
Write-Host "##vso[task.setvariable variable=SubscriptionConfiguration;]{}"
displayName: Initialize SubscriptionConfiguration variable for merging
condition: eq(variables['SubscriptionConfiguration'], '')
- ${{ each config in parameters.SubscriptionConfigurations }}:
- pwsh: |
$configBase = @'
$(SubscriptionConfiguration)
'@ | ConvertFrom-Json -AsHashtable
$config = @'
${{ config }}
'@ | ConvertFrom-Json -AsHashtable
. ./eng/common/TestResources/SubConfig-Helpers.ps1
UpdateSubscriptionConfiguration $configBase $config
displayName: Merge Test Resource Configurations
${{ if parameters.EnvVars }}:
env: ${{ parameters.EnvVars }}