Skip to content

Continous Integration

Jonathan Brooks edited this page May 6, 2021 · 14 revisions

Continous Integration

This page will give a general overview of how we have set up our CI. The CI configuration file can be found at .github/workflows/ci.yml.

Workflows

For our tests and builds, we have just one workflow; this can help reduce the time it takes to run all the jobs. We have named the workflow Build, lint, and test, and it's purpose is to check if the project builds and then run the test suite. The workflow is also configured to run every time one pushes a set of commits to GitHub.

We have also decided to use Sider for linting because it gives us an excellent interface to review our errors, and it saves us a lot of time we would have used for setting up a linter in Github Actions. You can find the Sider configuration in sider.yml.

Jobs

The project consists of two jobs, build-project and run-tests. We also utilise caching to avoid installing the Node.js dependencies or Cypress on each job run if they have not been changed.