Defines workflows which allows you to run CI checks and deployments using Docker and GitHub Actions. Supports:
- Analysis - Running code analysis using SonarQube
- Checks - Running Functional, E2E, Lint checks (with support for adding your own checks with dependencies using
docker compose
) - Deployment - Supports deploying on Digital Ocean's Kubernetes Cluster
- Configuration - Supports Doppler for injecting sensitive configuration values during deployments.
Our MERN Boilerplate implements the workflows documented here. Find the project here.
- Take latest pull from base branch -
main
- Create a new branch for the fix / feature, eg -
fix/remove_ci_version_from_clean
- To test out changes, push the changes and update the workflow ref. Example -
jalantechnologies/github-ci/.github/workflows/ci.yml@fix/remove_ci_version_from_clean
- Once changes have been tested, getting approval from code owners, PR can be merged using
Squash and Merge
.
- Create a new branch from
main
from where release needs to happen. - Follow semantic versioning for creating a new release, eg -
v1.2
- Update CHANGELOG with changes being released, commit the change.
- Push the branch to origin.
- Raise a PR pointed towards
main
for release. Ask for review from code owners and get it merged. - Create a new release with title being the version, eg -
v1.2
and description being the items added in CHANGELOG. - Workflows can now use this new version, eg -
jalantechnologies/github-ci/.github/workflows/ci.yml@v1.2