feat(release): v1.3.0+ から Cask 自動更新を有効化#192
Conversation
release.yml に update-cask ジョブを追加: - build ジョブから sha256 / zip_basename を outputs として露出 - HOMEBREW_TAP_TOKEN secret 未設定なら無害に skip - 設定済みなら ignission/homebrew-tap を clone し Casks/ark.rb の version + sha256 を sed で更新、main に直接 commit - tag (v<X.Y.Z>) と sha256 (64 hex) の形式を検証して sed 注入を防ぐ - zip basename が Cask の url パターン (Ark-<version>-arm64-mac.zip) と 整合しているかを assertion で確認 v1.2.0 までは手動 PR で Cask 投入済み (ignission/homebrew-tap#1)。 v1.3.0 から本ジョブが自動で Cask を bump する。
|
Warning Rate limit exceeded
You’ve run out of usage credits. Purchase more in the billing tab. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (1)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
概要
release.ymlにupdate-caskジョブを追加し、v1.3.0 以降のタグ push でignission/homebrew-tapのCasks/ark.rbを自動的に bump する。v1.2.0 までは手動で Cask を投入済み (ignission/homebrew-tap#1)。
本 PR で v1.3.0 以降の自動化が有効になる。
変更点
buildジョブoutputs.sha256/outputs.zip_basenameを露出SHA→SHA256,BASENAME→ZIP_BASENAMEに命名統一 (codex[低]反映)update-caskジョブ (新規)needs: build、tag (refs/tags/v*) push またはworkflow_dispatch+inputs.tag指定時のみ起動HOMEBREW_TAP_TOKENsecret 未設定なら無害に skip (release 自体は失敗させない)ignission/homebrew-tapのmainを checkout →Casks/ark.rbの version + sha256 を sed で更新 → main に直接 commit防御策 (codex review の段階反映)
TAGの形式 (^v[0-9]+\.[0-9]+\.[0-9]+$) とSHA256の形式 (64 hex) を検証して sed 注入を防止Ark-#{version}-arm64-mac.zip) の整合を検証sort -V -Cで拒否^ (version|sha256|url)) のみ (tap が private の場合の流出防止)前提 (マージ前の手動セットアップ)
ignission/claude-code-arkの Settings → Secrets and variables → Actions にHOMEBREW_TAP_TOKENを追加:ignission/homebrew-tapへのcontents: write権限を持つ fine-grained PATsecret 未設定でも release 自体は壊れない設計だが、設定しないと Cask 自動更新は永続的に skip される。
動作確認
v1.3.0 タグ push 時に release.yml の
update-caskジョブが走り、homebrew-tap の
Casks/ark.rbが自動で新しい version + sha256 に書き換わることを確認する。関連
zip位置引数を削除 #190, fix(release): electron-builder の macOS zip 出力名-mac.zipに追従 + multi-match ガード #191