
Master Azure DevOps yaml pipelines through practical demos and explore complex DevOps scenarios you may face in your everyday job.
Explore the course repository with project and pipelines folders containing Node.js and dotnet samples, and fork the repository to reuse Python and Ansible YAML pipelines.
Create and manage Azure DevOps repositories within your project, including git-based repositories, an empty default repository named after the project, and a test repo with a readme.
Create a YAML-based Azure DevOps build pipeline in the main repository, demonstrating hello world tasks, stages, and checkout behavior, with two setup options.
Create and configure release pipelines to deploy build artifacts across environments, define stages and variables, enforce pre-deployment approvals, and trigger releases from builds with continuous deployment.
Master continuous integration by configuring build triggers for GitHub pipelines to run automatically on commits, branches, PRs, and tags, using include and exclude rules.
Learn to trigger Azure DevOps pipelines via the REST API and post JSON bodies. The lecture demonstrates using personal access tokens, secure secret storage, and triggering pipelines from another pipeline.
Learn to build and run unit tests in a two-stage Azure DevOps pipeline using a Visual Studio solution with a console app and a test project, dotnet test.
Harness conditions in Azure DevOps pipelines with yaml. Use parameters and variables to run tasks conditionally, including pre compiled rules that skip tasks at compile time.
Explore multi repo checkout in azure devops pipelines by downloading multiple repositories from different sources, including GitHub, via service connections and aliases, with resource triggers and branch refs.
Show how to create a package feed in Azure DevOps, build and package a .NET class library, and push NuGet or npm packages to the feed, with permission tips.
Explore how Azure DevOps CI/CD pipelines orchestrate jobs and stages using the depends on and condition keywords to control execution, enabling rollback, parameter-driven outcomes, and continue on error.
Explore dynamic dependencies between jobs and stages in Azure DevOps pipelines using depends on, driven by a user-selected environment to run stage-specific deployments.
Configure pipeline resources in Azure DevOps to trigger a second pipeline automatically after the first finishes.
Explore how to create modular Azure DevOps YAML pipelines using templates, variables, and parameter passing to separate logic from configuration.
Build a Node.js app in an Azure DevOps pipeline by checking out code and installing dependencies with npm. Run npm build to execute index.js and show the console log.
Build and restore a dotnet web api into a container using a Dockerfile from an ASP.NET 7 base, then publish the image to Azure container registry via a service connection.
Deploy and manage containerised applications on Azure Kubernetes Service using Azure DevOps, creating a service connection, obtaining cluster credentials, and applying YAML deployments in a dedicated namespace.
Create an aws vpc with terraform via azure devops, including iam user setup, credentials, a service connection, and a three-step pipeline for terraform init and apply in eu west 1.
Explore deploying Azure resources with Terraform as code, configured via an Azure DevOps service connection, and applying plans to create virtual machines, networks, and storage state.
Execute python scripts in Azure DevOps pipelines by using the Python task, running inline code or scripts located in your repository, and managing dependencies like pandas.
Demonstrates installing a custom Node.js on a Windows build agent using a PowerShell script, downloading with Invoke-WebRequest, performing a silent install, and verifying versions.
Integrate Apache JMeter into Azure DevOps pipelines to run load and performance tests with a JMC definition file, export results, and publish JUnit-formatted test results.
Set up a self-hosted Azure DevOps agent inside a Docker container on Linux, building a custom image, and registering the container agent to a private pool using a token.
In this course you will learn how to master Azure YAML pipelines by building real world scenarios from production setups. The main goal of this course is to familiarise yourself with the available commands that Microsoft provides on the pipelines in order to build complex automation projects. Course is focused on practical examples of pipeline use cases that you can build and exercise on Azure DevOps platform. Those examples vary and depend on various services either azure internal or external that you can use plug n play in order to build, deploy and secure your infrastructure and deployments. Through the curriculum you can learn all the components required in order to create automation cases and understand how the tooling works in depth.
Course is mainly focused on practical demos and examples that you can use plug-n-play in your everyday work as a DevOps engineer.
Some of the objectives that you will learn are:
cron schedules
build pipelines
release pipelines
repositories
devops tools
environments
approvals
variables and parameters
devops agents
DevOps tools that are covered through this course:
Python
Terraform
Ansible
.NET
NodeJS
Azure Web apps
azure cli
Kubernetes
Docker
DevSecOps
DevSecOps tools that are covered through this course:
Sonarqube
Trivy
Gitleaks
Snyk
Examples pipelines that are included:
hello-world-pipeline
Create a hello world YAML pipeline
share-variables
Share local variables between jobs and tasks
predefined-variables
Use predefined variables for Working Directories, Git Repositories and Artifacts
build-strategy
Build pipelines continuous integration strategy
terraform-az-lin-win
Terraform pipeline to provision resources on Azure
rest-api-object
Pipeline which triggers a pipeline using Azure devops REST Api
called-from-rest-api
Pipeline with a parameter object as input which should be called from a REST API
unit-tests-azuredevops
Build unit tests and publish on Azure devops
conditions
Conditionally run tasks inside pipelines
build-dotnet
Build a .NET application
deploy-appservice
Build and deploy appservice on Azure
pipeline-templates
Using a template structure for devops pipelines
start-vm-loop
Start VMs on Azure using loops
cron-schedule
Run a pipeline based on a cron schedule
environmet-approval
Create build and release pipelines approvals using environments
multi-repo-checkout
Checkout multiple git repositories on azure devops pipelines
variables-parameters
Using variables and parameters on YAML pipelines
stages-jobs-tasks
Stages, jobs and tasks inside a YAML pipeline
execute-ansible
Execute ansible playbooks through azure devops
python-execution
Execute python scripts
build-nodejs
Build node JS applications using npm tool
update-build-number
Update pipeline name by changing build number
install-win-software
Install software (exe, msi) on windows machines
execute-command
Execute command on a virtual server without username and password
starting-template
Starting template with stage, job, tasks
push-package-feed
Push a package to Artifact feeds
kubernetes-deployment
Deploy nginx on kubernetes cluster
manual-validation
Execute tasks based on manual validation
jmeter-loadtest
Use Jmeter for performance testing
stage-dependencies
Create deployment workflows with stage dependencies
jobs-dependencies
Create execution workflows with job dependencies
dependson-variable
Dynamic dependencies with variables and parameters
acr-build-push
Build dotnet microservice and push on container registry
code-scan-trivy
Scan code projects with trivy
snyk-scan-container
Scan container images with snyk
gitleaks-scan
Scan for passwords and secrets with gitleaks
azure-load-testing
Load test websites with Azure Load testing
sonarqube-scan
Use Quality Gates and scan source code with sonarqube
run-pipeline-after-another
Run pipeline after another finishes execution
combined-template
Templates for jobs, tasks and stages(nested templates)