Here is an example of an Azure DevOps YAML pipeline that can be used to install kubectl and Helm, connect to an AKS cluster, and deploy an application to the AKS cluster:
# Install kubectl and Helm
- task: ShellScript@2
displayName: Install kubectl and Helm
inputs:
script: |
echo "Installing kubectl and Helm"
sudo apt-get update
sudo apt-get install -y kubectl
curl https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 | bash
# Connect to AKS cluster
- task: KubernetesManifest@0
displayName: Connect to AKS cluster
inputs:
action: connect
kubernetesServiceConnection: 'myAKSCluster'
# Deploy application to AKS cluster
- task: HelmDeploy@1
displayName: Deploy to AKS
inputs:
command: upgrade
chartType: file
chartPath: chart/
releaseName: my-release
namespace: my-namespace
In this example, the pipeline first installs kubectl and Helm using a shell script. Then, it uses the KubernetesManifest task to connect to the AKS cluster specified in the kubernetesServiceConnection
input. Finally, it uses the HelmDeploy task to deploy the application to the AKS cluster using the Helm chart located at the specified chartPath
.
It’s important to note that this is just an example, and the specific implementation may vary depending on the application and its requirements. Additionally, you will need to provide the right service connection to AKS and provide the right path to the Helm chart.
Also, it’s important to keep in mind that you need to have the right permissions and configuration in Azure DevOps and AKS in order to execute the pipeline successfully.