Skip to content

Actions のバージョンコメントを実タグと一致するフルバージョンに揃える - #32

Merged
krrrr38 merged 1 commit into
mainfrom
fix-action-version-comments
Aug 30, 2026
Merged

Actions のバージョンコメントを実タグと一致するフルバージョンに揃える#32
krrrr38 merged 1 commit into
mainfrom
fix-action-version-comments

Conversation

@krrrr38

@krrrr38 krrrr38 commented Aug 30, 2026

Copy link
Copy Markdown
Member

Summary

.github/workflows/*.yml の SHA ピン留めに付いているバージョンコメントが、実際のタグとズレていたため修正しました。SHA は一切変更していません(コメントのみの変更なので CI の実行内容は完全に同一です)。

背景

Renovate から Dependabot へ移行した際(#11)、# v6 のような major だけの短縮形コメントが残っていました。Dependabot も SHA ピン留めのコメント更新に対応していますが、version_commenter.rb の判定が

version_tags = git_checker.most_specific_version_tags_for_sha(old_ref)  # 旧SHAに付いてるタグ
version_tags
  .filter_map { |tag| version_class.new(tag).to_s if version_class.correct?(tag) }
  .select { |version| comment.end_with?(version) }   # ← コメントとの突き合わせ

となっており、「更新前 SHA に付いているタグ名でコメントが終わっている」場合のみコメントを書き換えます。移動タグ(v6 など)は新しいパッチリリース時点で別コミットへ移るため、短縮形コメントはマッチせず据え置かれ、SHA だけが更新されていました。Renovate は元の記述 ref を追跡する設計だったため # v6 が維持できていた、という違いです。

直近の #30(labeler 6.0.1 → 7.0.0)でも、SHA は 7.0.0 のものに変わったのにコメントは # v6 のまま残っています。

変更内容

Action 変更前 変更後
actions/checkout # v6 # v7.0.1
actions/labeler # v6 # v7.0.0
actions/setup-go # v6 # v7.0.0
actions/setup-java # v5 # v6.0.0
actions/setup-python # v5 # v7.0.0
reviewdog/action-actionlint # v1.72 # v1.73.2
ruby/setup-ruby # v1 # v1.321.0
sbt/setup-sbt # v1 # v1.5.8
shivammathur/setup-php # v2 # v2.37.2

Dependabot 移行後に更新された actions/setup-node・dorny/paths-filter・dependabot/fetch-metadata は既にフルバージョン形式で正しく追随できていたため、変更していません。

これにより以降は Dependabot がコメントも自動で追随します。actions/checkout のように v7v7.0.1 の両方が同じ SHA に付いていても、Dependabot 側は sort_by { version_class.new(t.name) } の末尾を取るためフルバージョンが選ばれ、# v7 へ劣化することはありません。

補足

  • shivammathur/setup-php の実タグは v なしの 2.37.2 ですが、既存スタイルに合わせて # v2.37.2 としています。突き合わせは comment.end_with?("2.37.2") なのでこれでマッチします。
  • 整合性を継続的に担保したい場合は suzuki-shunsuke/pinactpinact run --check)の CI 導入が有効です。actionlint / ghalint はこの不整合を検出しません。

Test plan

  • 全 12 個の uses について git ls-remote --tags で SHA に付くタグを取得し、コメントと一致することを確認
  • actionlint をローカル実行して指摘なし(exit 0)
  • CI(action-lint / 各言語テスト)がグリーンであること

🤖 Generated with Claude Code

@github-actions github-actions Bot added the ci label Aug 30, 2026
Renovate から Dependabot へ移行した際、`# v6` のような major だけの短縮形
コメントが残っていた。Dependabot は「更新前 SHA に付いているタグ名でコメントが
終わっているか」でコメント更新の可否を判定するため、移動タグ形式の短縮形は
マッチせず据え置かれ、SHA だけが更新されてコメントが実態とズレていた。

例: setup-python はコメントが `# v5` のまま実体は v7.0.0 だった。

SHA は変更せず、各 SHA に付いている最も具体的なタグ名へコメントのみを修正する。
これにより以降は Dependabot がコメントも追随して更新する。

Claude-Session: https://claude.ai/code/session_01SppdKxgYtCGigXC8dZyxob

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Signed-off-by: krrrr38 <k.kaizu38@gmail.com>
@krrrr38
krrrr38 force-pushed the fix-action-version-comments branch from 5809272 to 994c044 Compare August 30, 2026 23:14
@krrrr38
krrrr38 merged commit 2c1f60f into main Aug 30, 2026
24 checks passed
@krrrr38
krrrr38 deleted the fix-action-version-comments branch August 30, 2026 23:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant