Implementing Continuous Integration in Azure
This course provides knowledge and skills to implement continuous integration on the Azure DevOps Platform. These lessons will cover building-out Continuous Integration (CI) in Azure Pipelines, container builds, agents, and third-party integrations for security and testing.
This course is intended as a stand-alone course that can also be taken as part of a learning path, in conjunction with other courses, being developed, to work towards the AZ-400 Azure DevOps Expert Exam.
As we start this course, this lesson provides an overview of what we cover in the course, the focus areas, and how it can fit in with other courses around Azure DevOps.
About the Training Architect
In this lesson, we have a quick introduction to my background and experience as we move into Implementing Continuous Integration in Azure DevOps.
Manage Code Quality and Security Policies
Monitor Code Quality
In this lesson, we review common code quality problems. It's is important for us to understand the issues that we can test for, to develop effective tests. We will also see an example of an Azure Pipeline Build failing due to SonarCloud code quality testing.
Configure Build to Report on Code Coverage
In this lesson, we review how to setup SonarCloud build testing. It is important to get an understanding of testing tools and how to integrate them with our Azure Pipeline Builds. The lesson also takes a look at adding Quality Gates to inspect and control builds. Earlier SonarCloud lesson: https://linuxacademy.com/cp/courses/lesson/course/5666/lesson/1/module/457
Manage Automated Test Quality
In this lesson, we look at some of the results and functionality offered by the SonarCloud testing. This is important because this course does require an understanding of which testing tools would be recommended for which types of tests. The main tools used in this lesson will be the Azure DevOps Portal, and the SonarCloud test results view.
Manage Test Suites and Categories
In this lesson, we look at adding extensions via the Visual Studio Marketplace and in the Build Pipeline. It's important to be aware of the major testing extensions and the sort of issues they test for. In this example, we take a look at the NDepend and Resharper extensions for technical debt estimation and .net CLI testing.
Monitor Quality of Tests
In this lesson, we look at ways of controlling the releases of code to our environments. This will be done using Azure Release Pipeline and Deployment and Release Gates. This is important to understand, as you will need an understanding of options to control release in the AZ 400 exam.
Integrate Security Analysis Tools
This lesson looks at OpenSource Licensing and Library vulnerabilities and testing for these using WhiteSource Bolt. Per the exam syllabus, it is important to know the options for testing in this area and the types of results offered by this tool.
Implement a Container Build Strategy
Create Deployable Images
In this lesson, we will look at the concept of containers and how they can be deployed both in Azure DevOps, and the Azure Portal. For this course, we need to be aware of the different ways containers can be deployed in Azure and some of the differences between them.
Analyze and Integrate Docker Multi-Stage Builds
In this lesson, we're going to look at Docker builds and Multi-Stage Builds. It's important for this course to be aware of Multi-stage build and that these improve the runtime and size of Docker builds.
Implement a Build Strategy
Design Build Triggers, Tools, Integrations, and Workflow
This lesson goes through the integrations available to use in an DevOps lifecycle and third party tools that could be used either instead, or to enhance the process. Its important to understand the interaction of these components and the overall lifecycle of DevOps App development.
Implement a Hybrid Build Process
This lesson looks at hybrid build options, starting with self-hosted agents. We also review an additional hybrid option using Azure Stack as an On-Premises alternative. It's important to understand that Azure DevOps does not rely solely on cloud-based deployments and builds and some of the alternatives available.
Implement Multi-Agent Builds
This lesson looks at an example of configuring a Parallel Job in an Azure Pipeline Build. It is useful to understand the scenarios you might want to configure this, and where to access that in the portal.
Recommended Build Tools and Configuration
This lesson looks at the Microsoft recommended built tools and configurations. It's important, not only to understand where Azure DevOps tooling fits into the greater DevOps ecosystem but also where third party tools could fit in, instead.
Set Up an Automated Build Workflow
This lesson looks at automating builds and releases to create a full, automated CI/CD pipeline. This lesson uses Azure Pipeline builds and triggers with Azure Pipeline Releases and Gates. It's important to know which tools should be used at different stages of the DevOps pipeline and how they can interact.
Course Wrap Up
Course Conclusion and Next Steps
In this lesson, we take a look back at the topics and tools covered in this course, and we also recommend some next steps and future courses that will help your Azure DevOps development.
Take this course and learn a new skill today.
Transform your learning with our all access plan.Start 7-Day Free Trial