85
85
adminPassword : ${{ secrets.VMADMINPASSWORD }}
86
86
clusterName : " aksaio-${{github.run_id}}"
87
87
kvName : " kv-${{github.run_id}}"
88
+ saName : " sa${{github.run_id}}"
89
+ srName : " sr-${{github.run_id}}"
88
90
vmIdentityName : ${{ inputs.vmName }}-id
89
91
grafanaDashboardName : footprint-${{github.run_id}}
90
92
monitorName : footprint
@@ -161,7 +163,6 @@ jobs:
161
163
az provider register -n "Microsoft.ExtendedLocation"
162
164
az provider register -n "Microsoft.Kubernetes";
163
165
az provider register -n "Microsoft.KubernetesConfiguration";
164
- az provider register -n "Microsoft.IoTOperationsOrchestrator";
165
166
az provider register -n "Microsoft.IoTOperations";
166
167
az provider register -n "Microsoft.DeviceRegistry";
167
168
az provider register -n "Microsoft.Insights";
@@ -174,14 +175,6 @@ jobs:
174
175
osType=$(az vm show -g $resourceGroup -n $vmName --query storageProfile.osDisk.osType -o tsv)
175
176
principalId=$(az identity show --name $vmIdentityName -g $resourceGroup --query principalId -o tsv)
176
177
177
- echo "Creating keyvault..."
178
- kvId=$(az keyvault create --enable-rbac-authorization false -n $kvName -g $resourceGroup -o tsv --no-self-perms --query id -o tsv)
179
- az keyvault set-policy -n $kvName -g $resourceGroup --object-id ${{ secrets.AZURE_SP_OBJECT_ID }} --secret-permissions all --key-permissions all --storage-permissions all --certificate-permissions all
180
- az keyvault set-policy -n $kvName -g $resourceGroup --object-id $principalId --secret-permissions all --key-permissions all --storage-permissions all --certificate-permissions all
181
-
182
- echo "Encode secret for security reasons..."
183
- encodedBase64Secret=$(echo ${{ secrets.AZURE_SP_CLIENT_SECRET }} | base64)
184
-
185
178
echo "Creating VM extension for $osType with force update..."
186
179
if [ $osType == "Windows" ]; then
187
180
az vm extension set \
@@ -193,14 +186,16 @@ jobs:
193
186
--protected-settings "{\"commandToExecute\":\"powershell Get-AksEdgeKubeConfig -KubeConfigPath C:\\Scripts -Confirm:\$false; \
194
187
kubectl get pods -A -v6 --kubeconfig C:\\scripts\\config; \
195
188
az login --identity; \
196
- az extension add --name connectedk8s; \
197
- az extension add --name azure-iot-ops; \
189
+ az extension add --name connectedk8s --yes ; \
190
+ az extension add --name azure-iot-ops --version 0.7.0b1 --yes ; \
198
191
az connectedk8s connect --debug -n $clusterName -l $location -g $resourceGroup --kube-config C:\\Scripts\\config --subscription $subscriptionId; \
199
192
Remove-Item -LiteralPath C:\\Windows\\System32\\config\\systemprofile\\.azure\\AzureArcCharts -Recurse -Force; \
200
193
az connectedk8s enable-features --debug -n $clusterName -g $resourceGroup --kube-config C:\\Scripts\\config --custom-locations-oid \"\"${{ secrets.CUSTOM_LOCATIONS_OBJECT_ID }}\"\" --features cluster-connect custom-locations; \
201
194
\$env:KUBECONFIG='C:\\Scripts\\config'; \
202
- \$decodedSecret = [System.Text.Encoding]::UTF8.GetString([System.Convert]::FromBase64String('$encodedBase64Secret')); \
203
- az iot ops init --simulate-plc --no-progress --debug --cluster $clusterName -g $resourceGroup --kv-id \"\"$kvId\"\" --sp-app-id \"\"${{ secrets.AZURE_SP_CLIENT_ID }}\"\" --sp-object-id \"\"${{ secrets.AZURE_SP_OBJECT_ID }}\"\" --sp-secret \"\"\$decodedSecret\"\"; \
195
+ saId=$(az storage account create -n $saName -g $resourceGroup --enable-hierarchical-namespace -o tsv --query id); \
196
+ srId=$(az iot ops schema registry create -n $srName -g $resourceGroup --registry-namespace $srName --sa-resource-id \"\"$saId\"\" -o tsv --query id); \
197
+ az iot ops init --no-progress --debug --cluster $clusterName -g $resourceGroup --sr-resource-id \"\"$srId\"\" --kubernetes-distro K3s; \
198
+ az iot ops create -n $clusterName --cluster $clusterName -g $resourceGroup; \
204
199
\"}"
205
200
else
206
201
az vm extension set \
@@ -216,11 +211,14 @@ jobs:
216
211
kubectl get pods -A -v6 && \
217
212
decodedSecret=\$(echo $encodedBase64Secret | base64 -d) && \
218
213
az login --service-principal -u ${{ secrets.AZURE_SP_CLIENT_ID }} -p \"\"\$decodedSecret\"\" --tenant $tenantId && \
219
- az extension add --name connectedk8s && \
220
- az extension add --name azure-iot-ops && \
214
+ az extension add --name connectedk8s --yes && \
215
+ az extension add --name azure-iot-ops --version 0.7.0b1 --yes && \
221
216
az connectedk8s connect --debug -n $clusterName -l $location -g $resourceGroup --subscription $subscriptionId && \
222
217
az connectedk8s enable-features --debug -n $clusterName -g $resourceGroup --custom-locations-oid \"\"${{ secrets.CUSTOM_LOCATIONS_OBJECT_ID }}\"\" --features cluster-connect custom-locations && \
223
- az iot ops init --simulate-plc --debug --cluster $clusterName -g $resourceGroup --kv-id \"\"$kvId\"\" --sp-app-id \"\"${{ secrets.AZURE_SP_CLIENT_ID }}\"\" --sp-object-id \"\"${{ secrets.AZURE_SP_OBJECT_ID }}\"\" --sp-secret \"\"\$decodedSecret\"\" --no-progress \
218
+ saId=$(az storage account create -n $saName -g $resourceGroup --enable-hierarchical-namespace -o tsv --query id) && \
219
+ srId=$(az iot ops schema registry create -n $srName -g $resourceGroup --registry-namespace $srName --sa-resource-id \"\"$saId\"\" -o tsv --query id) && \
220
+ az iot ops init --debug --cluster $clusterName -g $resourceGroup --sr-resource-id \"\"$srId\"\" --kubernetes-distro K3s --no-progress && \
221
+ az iot ops create -n $clusterName --cluster $clusterName -g $resourceGroup \
224
222
\"}"
225
223
fi
226
224
0 commit comments