Skip to content

ci: add automated release workflows for pub.dev publishing#257

Merged
spydon merged 1 commit into
mainfrom
worktree-melos-workflows
Jul 2, 2026
Merged

ci: add automated release workflows for pub.dev publishing#257
spydon merged 1 commit into
mainfrom
worktree-melos-workflows

Conversation

@spydon

@spydon spydon commented Jul 2, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Adds a three-workflow release pipeline modeled on supabase-flutter's release process:
    • release-prepare.yml (workflow_dispatch): bumps versions/changelogs via Melos versioning and opens a chore(release): publish packages PR (supports prerelease and graduate inputs).
    • release-tag.yml (push to main on a chore(release): commit): tags each changed package and triggers release-publish.yml per package.
    • release-publish.yml (workflow_dispatch, triggered per tag): runs melos publish via pub.dev trusted publishing and creates the GitHub release.
  • Updates CONTRIBUTING.md §7 to describe the new automated release process.

Prerequisites before this can run end to end

  • GITHUB_TOKEN is used throughout (no GitHub App). If org/repo settings block Actions from opening PRs or pushing tags on main, enable "Allow GitHub Actions to create and approve pull requests" or switch to a PAT/App token.
  • pub.dev trusted publishing (OIDC) must be configured per package (Admin → Automated publishing → GitHub Actions) for passkeys, passkeys_android, passkeys_darwin, passkeys_web, passkeys_windows, passkeys_platform_interface, corbado_auth, and corbado_auth_firebase before release-publish.yml can publish.

Test plan

  • Validate YAML syntax (done locally via Ruby's YAML parser)
  • Configure pub.dev trusted publishing for each package
  • Dry-run release-prepare.yml on a branch with pending changes and confirm the PR body/versions look right
  • Merge the release PR and confirm release-tag.yml tags the right packages and triggers release-publish.yml only for changed ones
  • Confirm release-publish.yml publishes to pub.dev and creates a GitHub release

Adds a workflow_dispatch-driven release pipeline modeled on
supabase-flutter: a Prepare Release workflow bumps versions/changelogs
and opens a release PR, merging it tags changed packages, and each tag
triggers a publish workflow that releases to pub.dev via trusted
publishing and creates the GitHub release.
@spydon spydon merged commit 7803bf9 into main Jul 2, 2026
2 checks passed
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.

1 participant