Release Orchestration #33
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Release Orchestration | |
| # TODO: Tag and branch | |
| # TODO: insure we can only release from privileged branches/tags? | |
| # TODO: watch for releasing the same version more than once | |
| # TODO: figure out when we only publish to test, and when we go live | |
| # TODO: drop permissions here when calling children | |
| on: | |
| # push: # Just for testing FIXME: Remove this. | |
| workflow_dispatch: | |
| inputs: | |
| workflow-build-variant: | |
| description: "Build Variant" | |
| type: choice | |
| default: "dev" | |
| options: | |
| - dev | |
| - alpha | |
| - beta | |
| - rc | |
| - release | |
| env: | |
| PYTHON_VERSION: "3.13" | |
| jobs: | |
| generate-build-number: | |
| name: "Generate build number" | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: "Generate version-with-buildnum.txt file" | |
| uses: ./.github/actions/version-dot-buildnum | |
| with: | |
| build-variant: ${{ inputs.workflow-build-variant }} | |
| test: | |
| name: "Prerelease Tests" | |
| uses: ./.github/workflows/test.yml | |
| package: | |
| name: "Build Release Artifacts" | |
| uses: ./.github/workflows/release-build.yml | |
| needs: [test, generate-build-number] | |
| publish: | |
| name: "Publish Release Artifacts" | |
| uses: ./.github/workflows/release-publish.yml | |
| needs: package | |
| secrets: | |
| PYPI_API_TOKEN: ${{ secrets.PYPI_API_TOKEN }} | |
| PYPI_API_TOKEN_TEST: ${{ secrets.PYPI_API_TOKEN_TEST }} |