-
Notifications
You must be signed in to change notification settings - Fork 0
/
azure-pipeline.yaml
97 lines (84 loc) · 3.43 KB
/
azure-pipeline.yaml
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
trigger:
- main
pool:
# vmImage: 'ubuntu-latest'*
name: self-hosted-agent-pool
stages:
- stage: FetchKeyVaultSecrets
displayName: 'Fetch Secrets from the vault'
jobs:
- job: FetchKeyVaultSecrets
displayName: 'Fetch URLs from Azure Key Vault'
steps:
# - task: AzureKeyVault@2
# inputs:
# azureSubscription: 'v2devop-wif'
# KeyVaultName: 'v2devops-new-test'
# # SecretsFilter: '*'
# RunAsPreJob: false
# - script: |
# echo "Container1 URL: $(Container1Url)" >> output.txt&
# echo "Container2 URL: $(Container2Url)" >> output.txt
# cat output.txt
# displayName: 'Display fetched URLs'
- task: AzureCLI@2
inputs:
azureSubscription: 'v2devop-wif'
scriptType: 'bash'
scriptLocation: 'inlineScript'
# config=$(az appconfig kv list --resource-group v2devops-new --name appconfigcallmind --query "[].{Key:key, Value:value}")
inlineScript: |
json_data=$(az appconfig kv list -n appconfigcallmind --query "[].{Key:key, Value:value}" --output json)
echo $json_data
for item in $(echo "${json_data}" | jq -r '.[] | @base64'); do
_jq() {
echo ${item} | base64 --decode | jq -r ${1}
}
key=$(_jq '.Key')
value=$(_jq '.Value')
echo "Key: $key, Value: $value"
az containerapp update -n callmindtestcontainer -g v2devops-new --set-env-vars $key=$value
done
# az container update --name <containerAppName> --resource-group <resourceGroupName> $envVariables
# config=$(az appconfig kv list -n appconfigcallmind --query "[].{Key:key, Value:value}" --output json)
# envVariables=""
# while IFS= read -r line; do
# key=$(echo $line | jq -r '.Key')
# value=$(echo $line | jq -r '.Value')
# envVariables+=" --set $key=$value"
# done <<< "$config"
# echo "Environment variables are--------" $envVariables
# az container update --name <containerAppName> --resource-group <resourceGroupName> $envVariables
# Inline: |
# $config = Get-AzAppConfigurationKeyValue -ResourceGroupName v2devops-new -Name appconfigcallmind
# $envVariables = @{}
# foreach ($entry in $config) {
# $envVariables[$entry.Key] = $entry.Value
# }
# write $envVariables
# az container update --name callmindtestcontainer --resource-group v2devops-new --set environmentVariables=$envVariables
# - job: UpdateContainerApps
# displayName: 'Update Azure Container Apps Environment Variables'
# dependsOn: FetchKeyVaultSecrets
# # pool:
# # vmImage: 'ubuntu-latest'
# steps:
# - script: |
# az containerapp update -n callmindtestcontainer -g v2devops-new --set-env-vars CONTAINER2_URL=$(Container2Url)
# displayName: 'Update Azure Container Apps'
# - job: Push
# displayName: 'Build, Push & Deploy'
# steps:
# - task: AzureContainerApps@1
# inputs:
# appSourcePath: '$(Build.SourcesDirectory)'
# azureSubscription: 'v2devop-wif'
# acrName: 'callmindtest'
# # imageToDeploy: 'callmindacrdev.azurecr.io/callmindui:$(Build.BuildId)'
# imageToBuild : mcr.microsoft.com/azuredocs/containerapps-helloworld:latest
# containerAppName: 'callmindtestcontainer'
# resourceGroup: 'v2devops-new'
# environmentVariables: |
# CONTAINER2_URL=$(Container2Url)
# CONTAINER1_URL=$(Container1Url)
# testurl='testurl.com'