Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update GitHub Action workflow for CI #2970

Merged
merged 1 commit into from
Jan 3, 2023
Merged

Conversation

theseanything
Copy link
Contributor

@theseanything theseanything commented Dec 30, 2022

This updates the initial workflow to enable CI using GitHub Actions. It makes use of
reusable workflows and composite actions defined in govuk-infrastructure. The
CI workflow is initially only used to support deployments to the new EKS
infrastructure and not to immediately replace the CI workflow in Jenkins.

The CI workflow makes use of individual jobs to run each testing and linting
tool. This allows the processes to run concurrently and improves the visibility
of status in the GitHub UI.

Most jobs make use of reusable workflows as they are consistent across the
majority of our repositories - this allows us to easily maintain them in a
single place. However, the test-ruby job (and/or integration-tests) is defined
per repo as backing services and other dependencies vary greatly between repos.
Backing services (such as databases) are created using a composite action
instead of a job service. This is because they contain a lot of shared config
and makes it easier for us to maintain.

@theseanything theseanything force-pushed the bulk/add-github-actions-ci branch from 2d2cc59 to 4c49bd7 Compare December 30, 2022 10:30
@theseanything theseanything changed the title Add GitHub Action workflow for CI Update GitHub Action workflow for CI Dec 30, 2022
@theseanything theseanything marked this pull request as ready for review December 30, 2022 10:43
This updates the initial workflow to enable CI using GitHub Actions. It makes use of
reusable workflows and composite actions defined in govuk-infrastructure. The
CI workflow is initially only used to support deployments to the new EKS
infrastructure and not to immediately replace the CI workflow in Jenkins.

The CI workflow makes use of individual jobs to run each testing and linting
tool. This allows the processes to run concurrently and improves the visibility
of status in the GitHub UI.

Most jobs make use of reusable workflows as they are consistent across the
majority of our repositories - this allows us to easily maintain them in a
single place. However, the test-ruby job (and/or integration-tests) is defined
per repo as backing services and other dependencies vary greatly between repos.
Backing services (such as databases) are created using a composite action
instead of a job service. This is because they contain a lot of shared config
and makes it easier for us to maintain.
@theseanything theseanything force-pushed the bulk/add-github-actions-ci branch from 4c49bd7 to f0dfff2 Compare January 3, 2023 16:19
@theseanything theseanything merged commit cc86995 into main Jan 3, 2023
@theseanything theseanything deleted the bulk/add-github-actions-ci branch January 3, 2023 16:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants