Continuous Integration and Continuous Deployment
We have 5 GitHub Actions workflows for CI/CD:
Pre-Commit Hooks
Pre-Commit checks for linting and conventional commit messages are enforced with .github/workflows/pre-commit.yml
.
Run Tests
Unit tests are run with .github/workflows/test.yml
.
Semantic Release
If the tests are successful, changelog is generated, a new version is tagged, and a release is created with .github/workflows/semantic-release.yml
.
Build & Deploy
If the tests are successful, the app is built and deployed to CapRover with .github/workflows/deploy.yml
.
Build & Deploy Sphinx Docs
If the tests are successful, this documentation is built with Sphinx and its autoapi extension, then prepared for deployment to GitHub Pages with .github/workflows/docs.yml
.