Skill: Atualizar Versão do Twoliter
Propósito
Atualizar todos os repositórios no forest para uma nova versão do Twoliter. Isso cria commits git em core-kit, kernel-kit e repositórios bottlerocket com a versão atualizada e checksums SHA256.
Quando Usar
- Testar um novo release candidate do Twoliter
- Atualizar para uma nova versão estável do Twoliter
- Preparar pull requests para acionar testes de CI com uma nova versão do Twoliter
Pré-requisitos
- Todos os repositórios clonados no forest
- Git configurado com informações de autor
- Acesso de rede aos releases do GitHub
Procedimento
1. Buscar checksums SHA256 para a nova versão
Substitua X.Y.Z pela versão alvo (ex.: 0.13.0 ou 0.13.0-rc1):
# Para x86_64
curl -sSL "https://github.com/bottlerocket-os/twoliter/releases/download/vX.Y.Z/twoliter-x86_64-unknown-linux-musl.tar.xz.sha256"
# Para aarch64
curl -sSL "https://github.com/bottlerocket-os/twoliter/releases/download/vX.Y.Z/twoliter-aarch64-unknown-linux-musl.tar.xz.sha256"
2. Atualizar todos os kits
Para cada kit na worktree (ex.: bottlerocket-core-kit, bottlerocket-kernel-kit), edite o Makefile:
TWOLITER_VERSION ?= "X.Y.Z"
TWOLITER_SHA256_AARCH64 ?= "<aarch64-sha256>"
TWOLITER_SHA256_X86_64 ?= "<x86_64-sha256>"
Commite cada kit:
cd kits/<kit-name>
git add Makefile
git commit -m "chore: bump to twoliter X.Y.Z"
cd ../..
3. Atualizar bottlerocket
Edite bottlerocket/Makefile.toml na worktree (note o prefixo v):
TWOLITER_VERSION = "vX.Y.Z"
TWOLITER_SHA256_AARCH64 = "<aarch64-sha256>"
TWOLITER_SHA256_X86_64 = "<x86_64-sha256>"
Commite:
cd bottlerocket
git add Makefile.toml
git commit -m "chore: bump to twoliter X.Y.Z"
Validação
Verifique que os commits foram criados em todos os kits e no bottlerocket:
# Verificar cada kit
for kit in kits/*/; do
echo "=== $(basename $kit) ==="
(cd "$kit" && git show HEAD --stat)
done
# Verificar bottlerocket
(cd bottlerocket && git show HEAD --stat)
Cada um deve mostrar:
- Mensagem do commit:
chore: bump to twoliter X.Y.Z - 1 arquivo alterado, 3 inserções(+), 3 deleções(-)
Problemas Comuns
Checksum SHA256 não encontrado:
- Verifique se o release existe:
https://github.com/bottlerocket-os/twoliter/releases/tag/vX.Y.Z - Confirme que os binários estão anexados ao release
Formato da versão errado:
- Kits usam
"X.Y.Z"(sem prefixov) nos Makefiles - bottlerocket usa
"vX.Y.Z"(com prefixov) no Makefile.toml
Ajustando commits: Se você precisar atualizar um commit existente (ex.: mudando de RC para estável):
# Faça as alterações no arquivo, depois:
git add <arquivo>
git commit --amend -m "chore: bump to twoliter X.Y.Z"
Skills Relacionadas
- Nenhuma (skill independente)
Notas
- Esta skill NÃO faz push de commits nem cria pull requests
- Após criar os commits, você pode fazer push e criar PRs manualmente
- PRs acionarão CI para testar a nova versão do Twoliter
- Mudanças de versão do schema são raras; atualize apenas se as notas de release especificarem