Configuration

1. Configure the GitHub project

  • Make sure your GitHub project has access to a deployment token for PyPi with the following name: PYPI_TOKEN. It should be available to the repository either as an Organization-, Repository-, or Environment-secret.

  • If your CI workflow involves slow or expensive steps you can guard these to be executed only after manual approval. The CI workflow will automatically create a GitHub environment named manual-approval. You only need to add reviewers in (Settings/Environments/manual-approval) and move the steps to be guarded into the related section in job slow-checks in file .github/workflows/merge-gate.yml.

2. Add all workflows to your project

tbx workflow install all

Warning

  1. If you already have various workflows, you may want to run the update command instead of the install command.

  2. Some workflows depend on other workflows. Please ensure you have all the required workflows if you do not install all of them.

3. Update Branch Protection

The best and most maintainable way to have solid branch protection (Settings/Branches/main) is to require the workflow CI / Allow Merge to pass successfully.

Note

Setting the required status checks to pass before merging is only possible after running a CI build at least once on the affected branch.