- Lab
-
Libraries: If you want this lab, consider one of these libraries.
- Cloud
Build and Secure an End-to-End AKS CI/CD Pipeline
You’re a platform engineer at a company rolling out a microservices application to Azure Kubernetes Service (AKS). Your goal is to configure a secure, end-to-end CI/CD pipeline using GitHub and Argo CD. You’ll harden the pipeline with code scanning and branch protection, enable passwordless access to Azure resources using workload identity federation, and deploy Helm charts sourced from Azure Container Registry (ACR) into AKS. You’ll work from a provided Azure subscription and a pre-provisioned AKS cluster, using a lab VM and GitHub fork for hands-on tasks.
Lab Info
Table of Contents
-
Challenge
Fork the repository for the Hands-on lab
- Sign into GitHub using your personal GitHub account.
- Fork the repository for this lab: https://github.com/pluralsight-cloud/Lab-Build-and-Push-Secure-Artifacts-to-Azure-Container-Registry-with-GitHub-Actions
-
Challenge
Add code scanning
- Add CodeQL analysis
- Add Trivy code scanning using the YAML from the guide
-
Challenge
Configure branch protection
- Protect the default branch by requiring: - A pull request before merging - Code scanning results for CodeQL and Trivy
-
Challenge
Configure CI/CD pipeline using Workload Identity Federation and GitHub Actions
- Create a Federated Credential to enable GitHub Actions deploying Azure resources using the existing Managed Identity mi-githubactions for the main branch.
- Create GitHub secrets to enable Federated Credential Authentication:
AZURE_CLIENT_IDAZURE_SUBSCRIPTION_IDAZURE_TENANT_ID
- Set up a GitHub Actions workflow using the provided YAML in the lab guide
-
Challenge
Review the results
- Review the results in GitHub Actions
- Review the results in the Container Regsitry in the Azure Portal
About the author
Real skill practice before real-world application
Hands-on Labs are real environments created by industry experts to help you learn. These environments help you gain knowledge and experience, practice without compromising your system, test without risk, destroy without fear, and let you learn from your mistakes. Hands-on Labs: practice your skills before delivering in the real world.
Learn by doing
Engage hands-on with the tools and technologies you’re learning. You pick the skill, we provide the credentials and environment.
Follow your guide
All labs have detailed instructions and objectives, guiding you through the learning process and ensuring you understand every step.
Turn time into mastery
On average, you retain 75% more of your learning if you take time to practice. Hands-on labs set you up for success to make those skills stick.