Skip to content

chore(ci): align with bitbox_flutter — develop default, auto-tag, auto-release-pr#3

Merged
TaprootFreak merged 1 commit into
developfrom
chore/align-with-bitbox-flutter
May 16, 2026
Merged

chore(ci): align with bitbox_flutter — develop default, auto-tag, auto-release-pr#3
TaprootFreak merged 1 commit into
developfrom
chore/align-with-bitbox-flutter

Conversation

@TaprootFreak

Copy link
Copy Markdown
Contributor

Summary

Brings bitbox-testkit's CI/release plumbing in line with the DFXswiss/bitbox_flutter template, per the org-wide pattern (develop = default, develop→main release PRs, auto-tag on merge to main).

Changes in this PR (workflows)

  • test.ymltest.yaml, name: testname: PR checks, trigger expanded to push: [develop, main] (was [main] only).
  • New .github/workflows/auto-release-pr.yaml — literal port of bitbox_flutter's auto-release-pr. Every push to develop opens (or reuses) a Release: develop -> main PR.
  • New .github/workflows/auto-tag.yaml — patch-bumps the latest vX.Y.Z tag on every push to main and cuts a GitHub release.
    • One deliberate adaptation: in addition to vX.Y.Z, the workflow also creates go/vX.Y.Z on the same commit. Required by Go's submodule resolver because the module lives at /go/ — without the prefixed tag, go install github.com/DFXswiss/bitbox-testkit/go/cmd/bitbox-audit@vX.Y.Z fails. CONTRIBUTING.md already documented this two-tag requirement; the workflow now enforces it instead of relying on the human releaser.

Changes already applied out-of-band (GitHub API)

  • Default branch: maindevelop.
  • Branch ruleset on develop (id 16488485): deletion blocked, non-fast-forward blocked, PR required (0 approvals, squash-only). Mirrors bitbox_flutter.
  • Branch ruleset on main (id 16488487): deletion blocked, non-fast-forward blocked, PR required (1 approval, merge-commit only). Mirrors bitbox_flutter.

Validation

What this does NOT change

  • The Flutter-specific analyze-and-test job structure — bitbox-testkit's stack is Go + TS, so the job content must differ from bitbox_flutter; only the workflow scaffolding (triggers, naming, auto-* flows) is brought in line.
  • Repo-level docs (CONTRIBUTING.md, SECURITY.md, ONBOARDING.md) — testkit-specific, intentionally retained.

…-tag, auto-release-pr)

Bring the repo's CI plumbing in line with the DFXswiss/bitbox_flutter
template now that develop is the default branch:

* test.yml → test.yaml, renamed `name: test` to `name: PR checks`,
  trigger expanded to push develop+main.
* auto-release-pr.yaml: every push to develop opens (or reuses) a
  `Release: develop -> main` PR.
* auto-tag.yaml: every push to main bumps the patch version and
  creates a GitHub release. Adapted from the bitbox_flutter template
  to also emit the `go/vX.Y.Z` submodule tag — without it `go install`
  for the audit CLI cannot resolve the package (see CONTRIBUTING).

Repo settings (default branch develop, branch rulesets mirroring
bitbox_flutter) were applied directly via the GitHub API.
@TaprootFreak TaprootFreak marked this pull request as ready for review May 16, 2026 20:05
@TaprootFreak TaprootFreak merged commit b3ba6b7 into develop May 16, 2026
6 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