スキル: Twoliterバージョンの更新
目的
フォレスト内のすべてのリポジトリを新しいTwoliterバージョンに更新します。これにより、core-kit、kernel-kit、bottlerocketリポジトリに、更新されたバージョンとSHA256チェックサムを含むgitコミットが作成されます。
使用するタイミング
- 新しいTwoliterリリース候補のテスト
- 新しい安定版Twoliterリリースへの更新
- 新しいTwoliterバージョンでのCIテストをトリガーするプルリクエストの準備
前提条件
- すべてのリポジトリがフォレストにクローンされていること
- Gitが作成者情報で設定されていること
- GitHubリリースへのネットワークアクセス
手順
1. 新しいバージョンのSHA256チェックサムを取得
X.Y.Z をターゲットバージョンに置き換えます(例: 0.13.0 または 0.13.0-rc1):
# x86_64の場合
curl -sSL "https://github.com/bottlerocket-os/twoliter/releases/download/vX.Y.Z/twoliter-x86_64-unknown-linux-musl.tar.xz.sha256"
# aarch64の場合
curl -sSL "https://github.com/bottlerocket-os/twoliter/releases/download/vX.Y.Z/twoliter-aarch64-unknown-linux-musl.tar.xz.sha256"
2. すべてのキットを更新
ワークツリー内の各キット(例: bottlerocket-core-kit、bottlerocket-kernel-kit)について、Makefile を編集します:
TWOLITER_VERSION ?= "X.Y.Z"
TWOLITER_SHA256_AARCH64 ?= "<aarch64-sha256>"
TWOLITER_SHA256_X86_64 ?= "<x86_64-sha256>"
各キットをコミット:
cd kits/<kit-name>
git add Makefile
git commit -m "chore: bump to twoliter X.Y.Z"
cd ../..
3. bottlerocketを更新
ワークツリー内の bottlerocket/Makefile.toml を編集します(v プレフィックスに注意):
TWOLITER_VERSION = "vX.Y.Z"
TWOLITER_SHA256_AARCH64 = "<aarch64-sha256>"
TWOLITER_SHA256_X86_64 = "<x86_64-sha256>"
コミット:
cd bottlerocket
git add Makefile.toml
git commit -m "chore: bump to twoliter X.Y.Z"
検証
すべてのキットとbottlerocketでコミットが作成されたことを確認:
# 各キットを確認
for kit in kits/*/; do
echo "=== $(basename $kit) ==="
(cd "$kit" && git show HEAD --stat)
done
# bottlerocketを確認
(cd bottlerocket && git show HEAD --stat)
それぞれに次の内容が表示されるはずです:
- コミットメッセージ:
chore: bump to twoliter X.Y.Z - 1ファイル変更、3行追加、3行削除
よくある問題
SHA256チェックサムが見つからない:
- リリースが存在することを確認:
https://github.com/bottlerocket-os/twoliter/releases/tag/vX.Y.Z - バイナリアーティファクトがリリースに添付されているか確認
間違ったバージョン形式:
- キットのMakefileでは
"X.Y.Z"(vプレフィックスなし)を使用 - bottlerocketのMakefile.tomlでは
"vX.Y.Z"(vプレフィックスあり)を使用
コミットの修正: 既存のコミットを更新する必要がある場合(例: RCから安定版への移行):
# ファイルを変更した後:
git add <file>
git commit --amend -m "chore: bump to twoliter X.Y.Z"
関連スキル
- なし(独立したスキル)
注意事項
- このスキルはコミットをプッシュしたり、プルリクエストを作成したりしません
- コミットを作成した後、手動でプッシュしてPRを作成できます
- PRは新しいTwoliterバージョンでCIテストをトリガーします
- スキーマバージョンの変更はまれです。リリースノートで指定されている場合のみ更新してください