8 Complex deployments using GitHub Actions

 

This chapter covers

  • Deploying the Toma Toe (chapter 7) case using GitHub Actions
  • Connecting to Azure from GitHub Actions
  • Handling secrets when using GitHub Actions
  • Monitoring workflows while they are running

Git is currently one of the most popular source control systems around, and the GitHub platform (https://github.com), originally built around Git, is one of the most popular platforms for storing (code) projects. Throughout the years, GitHub has grown to a more mature application lifecycle management platform, including an integrated automation system called GitHub Actions.

GitHub Actions is the equivalent of an Azure DevOps pipeline that allows you to hook into events in your source control to implement CI/CD solutions in GitHub. Although both GitHub Actions and Azure Pipelines have a lot in common, there are some differences between the two. This chapter will touch upon those differences and will use the same Toma Toe use case as chapter 7. The same deployment process will be created, but this time using GitHub Actions.

8.1 Forking a repository

8.2 Getting to know GitHub Actions

8.2.1 Workflow events

8.2.2 Runners

8.2.3 Jobs

8.2.4 Steps

8.2.5 Actions

8.3 Building a GitHub Actions workflow

8.3.1 Adding a job to a GitHub Actions workflow

8.4 The deployment phase in GitHub Actions

8.4.1 Connecting to Azure from your GitHub workflow

8.5.1 Completing the deployment