Skip to content

ci: pin GoReleaser to the triggering tag - #295

Merged
version-1 merged 1 commit into
mainfrom
ci/pin-goreleaser-current-tag
Jul 29, 2026
Merged

ci: pin GoReleaser to the triggering tag#295
version-1 merged 1 commit into
mainfrom
ci/pin-goreleaser-current-tag

Conversation

@version-1

Copy link
Copy Markdown
Owner

GoReleaser が起動タグを使用するように修正

Summary

同一コミットに正式版タグと開発版タグが存在すると、GoReleaser が GitHub Actions を起動したタグとは異なるタグを選ぶ場合があります。

Release run 30447675031 では v0.4.0 の処理中に既存の開発版 release assets を再アップロードし、GitHub API の 422 already_exists で失敗しました。GoReleaser に workflow の起動タグを明示して再発を防ぎます。

主な変更点:

  • GORELEASER_CURRENT_TAGgithub.ref_name を設定
  • GoReleaser が同一コミット上の別タグを選択することを防止
  • 変更を GoReleaser step の環境変数だけに限定

やったこと

  • Release workflow の GoReleaser step に起動タグを渡す環境変数を追加
  • workflow YAML の構文を検証
  • base branch との差分と空白エラーを検証
  • Reviewer agent による PR 前レビューを実施

動作確認

  • Ruby YAML.parse_file による YAML 構文確認
  • git diff --check
  • origin/main の最新状態を含むことを確認
  • GitHub Actions 上での release workflow 実行

レビュー & 動作確認 チェックリスト

  • 起動タグの伝播 - github.ref_nameGORELEASER_CURRENT_TAG に渡されること
  • 複数タグ時の選択 - 同一コミット上の別タグを GoReleaser が選ばないこと
  • 既存処理への影響 - build、test、artifact 構成に変更がないこと

推奨テスト計画:

  1. workflow の式と環境変数設定を確認する
  2. 同一コミットに複数タグがある状態で release workflow を実行する
  3. 起動タグと作成された GitHub Release のタグが一致することを確認する

その他気になることや相談ごと

actionlint はローカル環境に存在しないため未実行です。今回の v0.4.0 リリースを復旧する操作は、この PR のスコープに含めていません。

Pass the GitHub ref name to GoReleaser so release jobs select the intended tag when multiple tags point to the same commit.

Validated the workflow YAML syntax and staged diff formatting.
@version-1
version-1 enabled auto-merge July 29, 2026 11:57
@version-1
version-1 merged commit e27e8e7 into main Jul 29, 2026
5 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