In the previous article I demonstrated how one can create chaos experiments to test their infrastructure against failures through Azure portal.
In order to automate the experiment execution through Azure DevOps we will need to create a new pipeline and use the task for az cli.
trigger:
- none
variables:
- name: EXP_NAME
value: chaos-az-down
- name: SUB_NAME
value: YOUR_SUB_ID
- name: RG_NAME
value: chaos
pool:
vmImage: ubuntu-latest
stages:
- stage: chaos_stage
displayName: Chaos Experiment stage
jobs:
- job: run_experiment
displayName: Run chaos experiment job
steps:
- task: AzureCLI@2
displayName: run experiment to stop app service
inputs:
azureSubscription: 'MVP'
scriptType: 'pscore'
scriptLocation: 'inlineScript'
inlineScript: 'az rest --method post --uri https://management.azure.com/subscriptions/$(SUB_NAME)/resourceGroups/$(RG_NAME)/providers/Microsoft.Chaos/experiments/$(EXP_NAME)/start?api-version=2023-11-01'
When we run the pipeline we will see that the task succeeded.
Finally the experiment execution will start automatically.
Links:
https://learn.microsoft.com/en-us/azure/chaos-studio/chaos-studio-tutorial-agent-based-cli