Skip to content

ci: gate releases on CI/audit status, add RELEASING.md#17

Merged
Nathan-D-R merged 2 commits into
mainfrom
fix/gate-publish-on-ci
Jul 19, 2026
Merged

ci: gate releases on CI/audit status, add RELEASING.md#17
Nathan-D-R merged 2 commits into
mainfrom
fix/gate-publish-on-ci

Conversation

@Nathan-D-R

Copy link
Copy Markdown
Contributor

Summary

publish.yml triggers on any v* tag push with no dependency on ci.yml or
audit.yml passing. GitHub Actions has no way for one workflow file to
needs: a job defined in a separate workflow file, so this has to be
enforced before the tag is created rather than inside publish.yml itself.

  • Add scripts/check-release-ready.sh, which resolves a ref (default HEAD)
    to a commit SHA and checks the latest ci.yml/audit.yml runs for that SHA
    via gh run list -w <workflow> -c <sha> --json status,conclusion,url -L 1.
    Fails with a clear message (including the run URL when available) if either
    workflow has no run for the commit, hasn't completed, or didn't succeed.
  • Add RELEASING.md documenting the release process (version bump in the
    workspace Cargo.toml, changelog, commit, tag, push, publish, verify),
    with the release-readiness check as an explicit required step before
    tagging.

Closes #16.

Test plan

  • Ran ./scripts/check-release-ready.sh (default HEAD = current
    main tip) - both ci.yml and audit.yml reported OK, script
    exited 0.
  • Ran it against an older commit predating audit.yml's introduction -
    ci.yml reported OK, audit.yml correctly reported "no run found",
    script exited 1.

publish.yml triggers on any v* tag push with no dependency on ci.yml or
audit.yml passing - GitHub Actions has no way for one workflow file to
`needs:` a job defined in another, so this can't be wired up inside
publish.yml itself. Add scripts/check-release-ready.sh, which queries
the latest ci.yml/audit.yml runs for a commit via `gh run list -c` and
fails if either hasn't run, is incomplete, or didn't succeed, and
document it as a required step in a new RELEASING.md.

Closes #16.
git rev-parse on an annotated tag returns the tag object's own SHA, not
the commit it points at, so gh run list -c <sha> would never find a
matching run when checking a tag ref (the script's primary intended
use case).
@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Jul 18, 2026

Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Updated (UTC)
✅ Deployment successful!
View logs
opentimstdf-docs f87c9de Jul 18 2026, 10:54 PM

@Nathan-D-R
Nathan-D-R merged commit 727f86e into main Jul 19, 2026
5 checks passed
@Nathan-D-R
Nathan-D-R deleted the fix/gate-publish-on-ci branch July 19, 2026 00:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Publish workflow isn't gated on CI/audit passing

1 participant