Deploy Azure resources by using Bicep and GitHub Actions

0
Microsoft Learn
Free Online Course
English
3-4 hours worth of material
selfpaced

Overview

  • Module 1: Build a basic deployment workflow for Bicep infrastructure as code templates by using Azure DevOps and GitHub Actions.
  • After completing this module, you'll be able to:

    • Automate Bicep deployments by using a workflow in GitHub Actions
    • Set up a GitHub secret to authenticate a workflow to Azure
    • Select an appropriate workflow trigger and set of tasks for a Bicep deployment
  • Module 2: Learn how to create, manage, and grant permissions to service principals, which enable your deployment pipelines to securely authenticate to Azure.
  • After completing this module, you'll be able to:

    • Explain what a service principal is, how it works, and how it compares to a managed identity
    • Create a service principal and manage its keys
    • Configure the appropriate authorization for a service principal to deploy Azure resources
  • Module 3: Build a deployment workflow for Bicep infrastructure as code templates. Lint, validate, preview, and test your Bicep code by using GitHub and GitHub Actions.
  • After completing this module, you'll be able to:

    • Add Bicep code linting during continuous integration
    • Add preflight deployment validation during build or release jobs
    • Add what-if checks, including manual approval steps
    • Verify the configuration of the deployed environment
  • Module 4: Build a deployment workflow for Bicep IaC templates. Deploy to multiple environments by using reusable workflows. Learn how to provide environment-specific parameters from your workflow.
  • After completing this module, you'll be able to:

    • Deploy Bicep files to multiple Azure environments from a workflow
    • Use reusable workflows to avoid repetition
    • Use and secure parameters for each environment
  • Module 5: Build a deployment workflow for Bicep infrastructure as code templates. Create a single workflow to deploy infrastructure, applications, and data.
  • After completing this module, you'll be able to:

    • Deploy Azure infrastructure, applications, database scripts, and storage blobs from a single workflow
    • Use workflow scripts and workflow actions to perform deployment steps
    • Use workflow artifacts to publish compiled files for your deployment workflow jobs to use
    • Pass data from your Bicep files to other deployment steps by using outputs

Syllabus

  • Module 1: Build your first Bicep deployment workflow by using GitHub Actions
    • Introduction
    • Understand GitHub Actions
    • Exercise - Create and run a basic workflow
    • Deploy Bicep files by using a workflow
    • Exercise - Create a GitHub secret
    • Exercise - Add a Bicep deployment action to the workflow
    • Use triggers to control when your workflow runs
    • Exercise - Update your workflow's trigger
    • Knowledge check
    • Summary
  • Module 2: Authenticate your Azure deployment pipeline by using service principals
    • Introduction
    • Understand service principals
    • Create a service principal and key
    • Exercise - Create a service principal and key
    • Grant a service principal access to Azure
    • Exercise - Authorize your service principal for deployments
    • Knowledge check
    • Summary
  • Module 3: Test your Bicep code by using GitHub Actions
    • Introduction
    • Understand workflow jobs
    • Lint and validate your Bicep code
    • Exercise - Set up your environment
    • Exercise - Add lint and validate jobs to your workflow
    • Preview and approve your deployment
    • Exercise - Add a preview job to your workflow
    • Test your resources after deployment
    • Exercise - Add a test job to your workflow
    • Knowledge check
    • Summary
  • Module 4: Manage multiple environments by using Bicep and GitHub Actions
    • Introduction
    • Understand environments
    • Handle similarities between environments by using reusable workflows
    • Exercise - Set up your environment
    • Exercise - Add multiple environments to your workflow
    • Handle differences between environments by using Bicep parameters
    • Exercise - Use Bicep parameters with multiple environments
    • Knowledge check
    • Summary
  • Module 5: Manage end-to-end deployment scenarios by using Bicep and GitHub Actions
    • Introduction
    • Understand end-end deployments
    • Configure applications and virtual machines
    • Exercise - Set up your environment
    • Exercise - Deploy a web application
    • Configure storage and databases
    • Exercise - Seed a storage account and database
    • Knowledge check
    • Summary