https://github.com/citrineinformatics/common-gh-actions
A collection of common GitHub actions and workflows
https://github.com/citrineinformatics/common-gh-actions
Last synced: 4 months ago
JSON representation
A collection of common GitHub actions and workflows
- Host: GitHub
- URL: https://github.com/citrineinformatics/common-gh-actions
- Owner: CitrineInformatics
- License: apache-2.0
- Created: 2024-04-25T18:02:34.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-05-15T16:08:31.000Z (about 2 years ago)
- Last Synced: 2025-06-22T12:07:01.363Z (12 months ago)
- Size: 12.7 KB
- Stars: 0
- Watchers: 10
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
This is intended to store the GitHub Actions workflows and actions which are shared by Citrine's public Python repos.
## Actions
### Intialize
Sets up the environment in which it's being run. Upgrades pip and installs all dependencies, including the calling repo itself.
#### inputs
- latest: if true, skips installing requirements.txt, instead relying on what's defined in the caller's setup.py install\_requires.
- documentation: if true, also installs the doc\_requirements.txt file.
## Workflows
### Repo Checks (repo-checks.yml)
Kicks off four jobs to perform standard repo checks. Namely:
- linting, using `flake8`,
- checks that the version number in /\_\_version\_\_.py was bumped
- looks for code marked deprecated, using `derp`
- confirms the docs build doesn't throw any warnings
#### inputs
- src: The directory containing the repo's source code.
### Run Tests (run-tests.yml)
Runs the repo's tests against every supported Python version and every supported OS.
It also kicks off a second run of tests in an environment where the dependency versions are the latest supported, instead of what's in requirements.txt.
#### inputs
- src: The directory containing the repo's source code.
- skip_38: If true, skip running tests on Python 3.8. Defaults to false.
- include_313: If true, include Python 3.13 in the test matrix. Defaults to false.
### Deploy Documentation (deploy-docs.yml)
Build and deploy the docs using GitHub Pages.
## Templates
These are workflows which for whatever reason can't be shared. As such, we provide what it should look like in your repo.
### Deploy to PyPI (deploy-template.yml)
Package the code and deploy it to PyPI. This requires you have an action secret defined called `PYPI_API_TOKEN`.
See https://github.com/pypi/warehouse/issues/11096 for details on why the PyPI deploy workflow cannot be shared.