Release (poetry)¶
python | poetry ¶
A GitHub Actions workflow for building and publishing Python packages using poetry.
flowchart TB
subgraph job_packaging["poetry | packaging"]
direction LR
job_packaging_step_0("git | clone")
job_packaging_step_1("poetry | setup")
job_packaging_step_0 --> job_packaging_step_1
job_packaging_step_2("poetry | format")
job_packaging_step_1 --> job_packaging_step_2
job_packaging_step_3("poetry | lint")
job_packaging_step_2 --> job_packaging_step_3
job_packaging_step_4("poetry | tox")
job_packaging_step_3 --> job_packaging_step_4
job_packaging_step_5("poetry | test")
job_packaging_step_4 --> job_packaging_step_5
job_packaging_step_6["poetry | build"]
job_packaging_step_5 --> job_packaging_step_6
job_packaging_step_7("artifact | dist")
job_packaging_step_6 --> job_packaging_step_7
end
subgraph job_release["poetry | release"]
direction LR
job_release_step_0("artifacts | dist")
job_release_step_1("release | pypi-test")
job_release_step_0 --> job_release_step_1
job_release_step_2("release | pypi")
job_release_step_1 --> job_release_step_2
job_release_step_3("release | create")
job_release_step_2 --> job_release_step_3
end
subgraph job_pages["poetry | pages"]
direction LR
job_pages_step_0("git | clone")
job_pages_step_1("poetry | setup")
job_pages_step_0 --> job_pages_step_1
job_pages_step_2("poetry | pdoc")
job_pages_step_1 --> job_pages_step_2
job_pages_step_3("pages | upload")
job_pages_step_2 --> job_pages_step_3
job_pages_step_4("pages | deploy")
job_pages_step_3 --> job_pages_step_4
end
job_packaging -.-> job_release
job_release -.-> job_pages
Inputs: ¤
| Name | Description | Default |
|---|---|---|
publish-pages
¤
|
Whether to publish GitHub pages. |
true
|
create-release
¤
|
Whether to create a new release. |
true
|
github-repository
¤
|
GitHub repository path (defaults to this repository if unset). |
|
project-summary
¤
|
|
|
logo-url
¤
|
URL or path to an icon to display as the package logo. |
https://www.python.org/static/community_logos/python-logo-master-v3-TM.png
|
favicon-url
¤
|
URL or path to a favicon to display in live documentation. |
https://www.python.org/static/community_logos/python-logo-master-v3-TM.png
|
working-directory
¤
|
python
|
|
package-namespace
¤
|
||
python-version
¤
|
||
low-pct-coverage-threshold
¤
|
60
|
|
high-pct-coverage-threshold
¤
|
90
|
|
ssh-known-hosts
¤
|
Hosts to be added to the |
|
ssh-private-keys
¤
|
SSH private keys. |
|
init-script
¤
|
Path to a preambulatory script for initialising any special dependencies. |
|
tox
¤
|
Whether to run |
false
|
codecov-oidc
¤
|
Whether to use OIDC authentication with |
false
|
Secrets: ¤
| Name | Description |
|---|---|
POETRY_SSH_PRIVATE_KEY
¤
|
SSH private key for a Poetry Git dependency. |
PYPI_API_TOKEN
¤
|
PyPi token. |
TEST_PYPI_API_TOKEN
¤
|
PyPi (test) token. |
CODECOV_TOKEN
¤
|
Codecov token. |