forked from Azure/azure-sdk-tools
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathlive-test-cleanup-template.yml
More file actions
100 lines (87 loc) · 3.41 KB
/
live-test-cleanup-template.yml
File metadata and controls
100 lines (87 loc) · 3.41 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
parameters:
- name: DryRun
type: boolean
default: false
- name: GroupFilter
type: string
default: '*'
- name: DisplayName
type: string
- name: ServiceConnection
type: string
- name: SubscriptionConfigurations
type: object
default: []
- name: SubscriptionConfigurationFilePaths
type: object
default: []
- name: GithubAliasCachePath
type: string
- name: AdditionalParameters
type: string
default: ""
- name: Pool
type: string
steps:
- pwsh: Write-Host "##vso[task.setvariable variable=Pool;]${{ parameters.Pool }}"
- template: /eng/common/TestResources/build-test-resource-config.yml
parameters:
SubscriptionConfigurations: ${{ parameters.SubscriptionConfigurations }}
SubscriptionConfigurationFilePaths: ${{ parameters.SubscriptionConfigurationFilePaths }}
EnvVars:
Pool: $(Pool)
- ${{ if ne(parameters.ServiceConnection, '') }}:
- task: AzurePowerShell@5
inputs:
azureSubscription: ${{ parameters.ServiceConnection }}
azurePowerShellVersion: LatestVersion
pwsh: true
ScriptType: InlineScript
Inline: |
eng/common/scripts/Import-AzModules.ps1
Import-Module Az.Accounts
$subscriptionConfiguration = @'
$(SubscriptionConfiguration)
'@ | ConvertFrom-Json -AsHashtable
$context = Get-AzContext
$subscriptionConfiguration["Environment"] = $context.Environment.Name
$subscriptionConfiguration["SubscriptionId"] = $context.Subscription.Id
$subscriptionConfiguration["TenantId"] = $context.Subscription.TenantId
$subscriptionConfiguration["TestApplicationId"] = $context.Account.Id
$subscriptionConfiguration["ProvisionerApplicationId"] = $context.Account.Id
$principal = Get-AzADServicePrincipal -ApplicationId $context.Account.Id
$subscriptionConfiguration["TestApplicationOid"] = $principal.Id
$subscriptionConfiguration["ProvisionerApplicationOid"] = $principal.Id
Write-Host ($subscriptionConfiguration | ConvertTo-Json)
./eng/scripts/live-test-resource-cleanup.ps1 `
-OpensourceApiApplicationToken $(opensource-api-token) `
-GithubAliasCachePath ${{ parameters.GithubAliasCachePath }} `
@subscriptionConfiguration `
-Verbose `
${{ parameters.AdditionalParameters }} `
-UseExistingAzContext `
-GroupFilter '${{ parameters.GroupFilter }}' `
-WhatIf:$${{ parameters.DryRun }}
displayName: ${{ parameters.DisplayName }}
continueOnError: true
env:
PoolSubnet: $(PoolSubnet)
- ${{ else }}:
- pwsh: |
eng/common/scripts/Import-AzModules.ps1
Import-Module Az.Accounts
$subscriptionConfiguration = @'
$(SubscriptionConfiguration)
'@ | ConvertFrom-Json -AsHashtable
./eng/scripts/live-test-resource-cleanup.ps1 `
-OpensourceApiApplicationToken $(opensource-api-token) `
-GithubAliasCachePath ${{ parameters.GithubAliasCachePath }} `
@subscriptionConfiguration `
-Verbose `
${{ parameters.AdditionalParameters }} `
-GroupFilter '${{ parameters.GroupFilter }}' `
-WhatIf:$${{ parameters.DryRun }}
displayName: ${{ parameters.DisplayName }}
continueOnError: true
env:
PoolSubnet: $(PoolSubnet)