Skip to the content.

Continuous Integration

Github actions

When a PR is opened a GitHub action will be triggered that runs a number of tests that validates the code. This action is located at .github/workflows/main.yml in the repository. This action will perform the following tasks:

Whenever a merge happens to either the master or develop branch, a GitHub action will trigger an Azure build pipeline. These actions are located in the .github/workflows directory in the repository. infra-develop.yml runs when a merge to develop occurs, infra.yml runs when a merge to master occurs.

Build pipeline

The pipelines for develop and staging/acceptance/production are nearly identical. The biggest differences are:

workflow filename triggered by a push to: deploys build on: Sanity database note
infra-develop.yml origin/develop development development  
infra-acceptance.yml origin/release/*, or origin/hotfix/* acceptance production The build is always done with the branch that triggers the build.
infra.yml origin/master staging and production production Deploy to production only happens after approval by the client.

The build process follows these steps:

Intended Purpose

Each environment serves a different purpose.

F.A.Q.

  1. What happens to the acceptance environment after the last staging branch is deleted and before the new staging branch si created?
    • The last build will remain on the server, regardless of the existence of the branch that originally triggered that build. This means that nothing happens to the environment, until a new trigger for a new build happens.
  2. What if there are multiple branches that can trigger the acceptance build?
    • Which ever branch gets pushed to will trigger a build for that branch. That build will be deployed over the previous build. We do have the option to re-trigger a previous action manually. This means we are always in control of which build will be on acceptance.

Back to index