Skip to content

ci: continuous-delivery releases (single guarded bump, pin cicd @v1)#124

Merged
trakhimenok merged 1 commit into
mainfrom
ci/continuous-delivery
Jul 17, 2026
Merged

ci: continuous-delivery releases (single guarded bump, pin cicd @v1)#124
trakhimenok merged 1 commit into
mainfrom
ci/continuous-delivery

Conversation

@trakhimenok

Copy link
Copy Markdown
Contributor

Moves ingitdb-cli onto the ecosystem single release process (continuous delivery), and fixes the two bugs found while auditing releases.

What was broken

  • Releases silently stalled at v0.40.1 (March): the CI bump job created tags with GITHUB_TOKEN, which by GitHub's rules can't trigger the tag-listening release.yml. Tags climbed to v1.32.0; nothing published.
  • A feat(cli)!: commit had accidentally major-bumped v0.64.2 → v1.0.0 (github-tag-action treats ! as major regardless of the major_string_token sentinel). ingitdb is pre-1.0. The 85 orphan v1.x tags (zero of them released) have been deleted; the tag line resumes at v0.64.2.

What this does

  • release.yml: triggers on push to main (+ tag push + workflow_dispatch). The shared strongo/cicd workflow bumps from conventional commits and releases in one run — no cross-workflow token cascade. An explicit vX.Y.Z tag still releases that exact version.
  • golangci.yml: disable-version-bumping: true (CI only builds/lints/tests; release.yml is the sole bumper). Pinned @v1 (was @main).
  • Pre-1.0 guard: allow_major_version_bump: false → the accumulated breaking commits since v0.64.2 are capped to a minor (→ v0.65.0), not a v1 jump. Cut v1.0.0 deliberately by pushing that tag.
  • choco/snap run only when core actually cut a tag (needs.core.outputs.tag) or on a tag push — a docs-only merge won't try to publish an untagged commit.

Effect on merge

The first CD run should publish v0.65.0 — ingitdb-cli's first release since March — exercising the dormant notarize scaffold (skipped, unsigned) and the Homebrew cask for the first time.

Depends on the strongo/cicd guard (merged; v1 → v1.9.1) and the orphan-tag cleanup (done).

🤖 Generated with Claude Code

Move to the ecosystem single release process (continuous delivery):

- release.yml now triggers on push to `main` (+ tag push + workflow_dispatch).
  The shared strongo/cicd release workflow bumps from conventional commits and
  releases in ONE run, so the GITHUB_TOKEN-created tag no longer has to trigger
  a second workflow (the cause of releases silently stalling at v0.40.1 while
  tags climbed to v1.32.0). An explicit vX.Y.Z tag still releases that exact
  version.
- golangci.yml sets disable-version-bumping: true so the CI workflow no longer
  cuts a competing tag; the release workflow is the sole bumper. Pinned to @v1
  (was @main).
- Pre-1.0 guard: allow_major_version_bump stays false, so the accumulated
  breaking (`feat!:`) commits since v0.64.2 are CAPPED to a minor bump
  (-> v0.65.0) rather than jumping to v1. (The orphan v1.x tags were removed.)
- chocolatey/snap now run only when core actually cut a tag this run
  (needs.core.outputs.tag) or on an explicit tag push, so a docs-only merge
  doesn't try to publish an untagged commit.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01HZythDmdpA3cm1pNdeirwp
@trakhimenok
trakhimenok merged commit 6683298 into main Jul 17, 2026
5 checks passed
@trakhimenok
trakhimenok deleted the ci/continuous-delivery branch July 17, 2026 17:50
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