Skip to content

CI/CD with Github actions

when include_github_actions is set to "y", a .github directory is added with the following structure:

.github
├── workflows
├─── run-checks
│    └── action.yml
├─── setup-poetry-env
│    └── action.yml
├── on-merge-to-main.yml
├── on-pull-request.yml
└── on-release-main.yml

on-merge-to-main.yml and on-pull-request.yml are identical except for their trigger conditions; the first is run whenever a new commit is made to main (which should only happen through merge requests, hence the name), and the latter is run whenever a pull request is opened or updated. They call the action.yml files to set-up the environment, run the tests, and check the code formatting.

Additionally, all workflows check for compatibility with multiple Python versions if tox is set to "y".

How to trigger a release?

To trigger a new release, navigate to your repository on GitHub, click Releases on the right, and then select Draft a new release. If you fail to find the button, you could also directly visit https://github.com/<username>/<repository-name>/releases/new.

Give your release a title, and add a new tag in the form *.*.* where the *'s are alphanumeric. To finish, press Publish release.