docs: add release process documentation and fix workflow#76
docs: add release process documentation and fix workflow#76
Conversation
docs/RELEASE_PROCESS.md
Outdated
| ### Why This Order Matters | ||
|
|
||
| The PyPI workflow triggers on: | ||
|
|
||
| - Push to `release` branch | ||
| - Push of version tags (e.g., `1.0.6`) |
There was a problem hiding this comment.
Docs contradict the workflow change in this PR
This section (and related content below) describes tag pushes as a valid workflow trigger, but this PR removes the tag triggers from pypi.yml:
- tags:
- - '[0-9]+.[0-9]+.[0-9]+'
- - '[0-9]+.[0-9]+.[0-9]+-*'After this PR, pushing a version tag will not trigger the workflow at all. The following content is now inaccurate:
- Lines 165–168: "The PyPI workflow triggers on: ... Push of version tags" — tags are no longer a trigger
- Line 188 (Workflow Triggers Summary table): the
| Push version tag | ...row documents a trigger that no longer exists - Lines 170–175 ("If you push the tag first..."): the entire ordering rationale is moot since tag pushes no longer trigger anything
- Lines 194–200 (Troubleshooting: "Tag is not allowed to deploy..."): this failure mode can no longer occur
The fix is to remove or rewrite these sections to reflect the branch-only trigger model, and clarify that tags are only needed for hatch-vcs versioning (so the release branch can read the version), not for triggering the workflow.
Tags triggered the workflow but failed environment protection rules. The release branch trigger is sufficient - it finds the tag for versioning.
987410a to
df04147
Compare
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
| if: startsWith(github.ref, 'refs/tags/') | ||
| uses: softprops/action-gh-release@v1 | ||
| if: needs.prepare.outputs.environment == 'release' | ||
| with: |
There was a problem hiding this comment.
Bug: uses: directive accidentally deleted, leaving step with duplicate if: keys and no action to run.
The uses: softprops/action-gh-release@v1 line was replaced by a second if: condition instead of being placed alongside it. This results in two problems:
- The step has no
uses:(orrun:) directive — GitHub Actions will fail to parse/execute it. - Duplicate
if:keys are invalid YAML; the second silently overwrites the first, discarding thestartsWith(github.ref, 'refs/tags/')condition.
See the affected lines:
workato-platform-cli/.github/workflows/pypi.yml
Lines 168 to 177 in 5c5b0b5
| if: startsWith(github.ref, 'refs/tags/') | |
| uses: softprops/action-gh-release@v1 | |
| if: needs.prepare.outputs.environment == 'release' | |
| with: | |
| if: needs.prepare.outputs.environment == 'release' | |
| uses: softprops/action-gh-release@v1 | |
| with: |
Summary
This PR adds documentation for the release process and fixes the PyPI workflow trigger.
Changes
1. Release Process Documentation (
docs/RELEASE_PROCESS.md)Complete guide covering:
2. PyPI Workflow Fix
Removed tag triggers from the workflow. Previously, pushing a version tag would trigger the workflow but fail due to environment protection rules (only the
releasebranch is allowed to deploy to the release environment).Now the workflow only triggers on:
testbranch → Test PyPIreleasebranch → Production PyPIThe release branch push finds the tag for versioning, so tag triggers are unnecessary.
Testing