- Module 1: Set up a continuous integration (CI) pipeline that automates the process of building your application.
After completing this module, you'll be able to:
- Create a build pipeline in Azure Pipelines
- Map manual build steps to automated build tasks
- Publish your builds so others can access them
- Use templates to build multiple configurations (optional)
- Module 2: Find out about automated testing that proves your code to be maintainable, understandable, and functioning without repetitive manual testing.
After completing this module, you'll be able to:
- Explain the benefits of automated testing and the kinds of testing you can use.
- Run unit tests locally and then in Azure Pipelines.
- Add dashboard widgets to visualize test runs over time.
- Perform code coverage testing to see how much of your code is covered by unit tests.
- Fix and verify test failures in your build pipeline.
- Module 3: In this module, the Space Game web team guides you through creating a build pipeline that produces a package that can be used by multiple applications.
After completing this module, you'll be able to:
- Create and share packages that multiple applications can use.
- Create a build pipeline for your package and publish your package to Azure Artifacts.
- Connect an application to your package and build the application in Azure Pipelines.
- Push changes to your package and update your application to use them.
- Module 4: Work with guidance from the Space Game web team to set up your build agent running on-premises or on an Azure virtual machine running in the cloud.
After completing this module, you'll be able to:
- Choose when to use Microsoft-hosted build agents and when to host your own
- Describe the options you have when you're managing your own build agents
- Bring up and configure your own agent to work with Azure Pipelines
- Connect your agent to a pipeline and build your application
- Module 5: Set up a continuous delivery (CD) pipeline that automates the process of deploying your application.
After completing this module, you'll be able to:
- Define what continuous delivery is, why it's important, and what tools you can use.
- Create a basic release pipeline in Azure Pipelines that deploys a web application to Azure App Service.
- Examine pipeline analytics to understand the health and history of your releases.
- Module 6: Design and create a realistic release pipeline that promotes changes to various testing and staging environments.
After completing this module, you'll be able to:
- Identify the stages, or major divisions of the pipeline, that you need to implement a multistage pipeline
- Explain when to use conditions, triggers, and approvals to promote changes from one stage to the next
- Promote a build through these stages: Dev, Test, and Staging
- Module 7: Run Selenium UI tests, a form of functional testing, in Azure Pipelines.
After completing this module, you'll be able to:
- Define the role of functional tests and identify some popular kinds of tests you can run.
- Map manual testing steps to automated test cases.
- Run automated UI tests locally and in the pipeline by using Selenium.
- Module 8: Run automated load tests by using Apache JMeter, a form of nonfunctional testing, in Azure Pipelines.
After completing this module, you'll be able to:
- Define the role of nonfunctional tests and explain how they compare to functional tests
- Identify some popular kinds of nonfunctional tests you can run
- Run automated load tests in the pipeline by using Apache JMeter
- Convert test results to a format that Azure Pipelines can visualize for you
- Module 9: Choose and implement a deployment pattern that helps you smoothly roll out new application features to your users.
After completing this module, you'll be able to:
- Explain why deployment patterns matter
- Compare different deployment patterns so that you can choose the one that best suits your needs
- Apply the blue-green deployment pattern in your pipeline
- Module 10: Learn how to protect your virtual machine settings with Azure Automation State Configuration
In this module, you will:
- Identify the capabilities of Azure Automation State Configuration.
- Learn how to onboard VMs for management by Azure Automation.
- Automatically update VMs to maintain a desired state configuration (DSC).
- Module 11: Learn how to create workflows that enable you to use Continuous Integration (CI) for your projects.
In this module, you will:
- Learn essential features and techniques to build robust and dynamic workflows
- Build and test a Node.js project by using GitHub Actions and a templated workflow
- Debug a failed test using the GitHub Actions Log
- Customize your workflow with GitHub Actions
Overview
Syllabus
- Module 1: Module 1: Create a build pipeline with Azure Pipelines
- Introduction
- What is Azure Pipelines?
- Exercise - Get the sample application
- Plan your build tasks
- Exercise - Set up your Azure DevOps environment
- Exercise - Create the pipeline
- Exercise - Publish the result to the pipeline
- Exercise - Build multiple configurations by using templates
- Exercise - Clean up your Azure DevOps environment
- Summary
- Module 2: Module 2: Run quality tests in your build pipeline by using Azure Pipelines
- Introduction
- What is automated testing?
- Exercise - Set up your Azure DevOps environment
- Exercise - Add unit tests to your application
- Exercise - Add a testing widget to your dashboard
- Exercise - Perform code coverage testing
- Exercise - Fix a failed test
- Exercise - Clean up your Azure DevOps environment
- Summary
- Module 3: Module 3: Manage build dependencies with Azure Artifacts
- Introduction
- Plan build dependencies for your pipeline
- What is Azure Artifacts?
- Exercise - Set up your Azure DevOps environment
- Exercise - Create a package feed in Azure Artifacts
- Exercise - Create a pipeline for your package
- Exercise - Reference the package from the application
- Exercise - Push a change to your package
- Exercise - Clean up your Azure DevOps environment
- Summary
- Module 4: Module 4: Host your own build agent in Azure Pipelines
- Introduction
- Choose a Microsoft-hosted or self-hosted build agent
- Exercise - Set up your Azure DevOps environment
- Exercise - Create a build agent that runs on Azure
- Exercise - Build the application using your agent
- Exercise - Clean up your Azure DevOps environment
- Summary
- Module 5: Module 5: Create a release pipeline in Azure Pipelines
- Introduction
- What is continuous delivery?
- Plan a release pipeline by using Azure Pipelines
- Exercise - Set up your environment
- Exercise - Deploy the web application to Azure App Service
- Exercise - Monitor the health of your pipeline
- Exercise - Clean up your environment
- Summary
- Module 6: Module 6: Create a multistage pipeline by using Azure Pipelines
- Introduction
- Design the pipeline
- Exercise - Set up your Azure DevOps environment
- Exercise - Promote to the Dev stage
- Exercise - Promote to the Test stage
- Exercise - Promote to Staging
- Exercise - Clean up your Azure DevOps environment
- Summary
- Module 7: Module 7: Run functional tests in Azure Pipelines
- Introduction
- What is functional testing?
- Exercise - Set up your Azure DevOps environment
- Plan the UI tests
- Write the UI tests
- Exercise - Run the UI tests locally and in the pipeline
- Exercise - Clean up your Azure DevOps environment
- Summary
- Module 8: Module 8: Run nonfunctional tests in Azure Pipelines
- Introduction
- What is nonfunctional testing?
- Exercise - Set up your Azure DevOps environment
- Plan load tests by using Apache JMeter
- Exercise - Run load tests in Azure Pipelines
- Exercise - Clean up your Azure DevOps environment
- Summary
- Module 9: Module 9: Manage release cadence in Azure Pipelines by using deployment patterns
- Introduction
- What are deployment patterns?
- Exercise - Set up your environment
- Exercise - Implement the blue-green deployment pattern
- Exercise - Push a change through the pipeline
- Exercise - Clean up your environment
- Summary
- Module 10: Module 10: Protect your virtual machine settings with Azure Automation State Configuration
- Introduction
- What is Azure Automation State Configuration?
- Use PowerShell DSC to achieve a desired state
- Exercise - Set up a DSC and configure a desired state
- Summary
- Module 11: Module 11: Build continuous integration (CI) workflows by using GitHub Actions
- Introduction
- How do I use GitHub Actions to create workflows for CI?
- Customize your workflow with environment variables and artifact data
- Exercise - Create the CI workflow on GitHub
- Knowledge check
- Summary