Community코딩 & 개발github.com

twoliter-업데이트

모든 Bottlerocket 리포지토리를 새로운 Twoliter 버전으로 업데이트합니다.

twoliter-업데이트란 무엇인가요?

이 스킬은 Bottlerocket 생태계 내의 여러 Git 리포지토리(코어 킷, 커널 킷 및 Bottlerocket 메인 리포지토리)에서 Twoliter 빌드 도구의 버전과 SHA256 체크섬을 한 번에 업데이트하는 자동화된 절차를 제공합니다. 개발자는 새 릴리스 후보를 테스트하거나 안정적인 Twoliter 버전으로 마이그레이션할 때 이 스킬을 사용합니다. 모든 작업은 로컬 포레스트(worktree)에서 수행되며, 각 리포지토리의 Makefile 또는 Makefile.toml에서 TWOLITER_VERSION과 해당 SHA256 값을 수정한 후 의미 있는 커밋 메시지로 커밋을 생성합니다. 이 스킬은 Git 푸시나 PR 생성을 포함하지 않으므로, 사용자는 이후 수동으로 CI 테스트를 트리거할 수 있습니다. 주요 차이점은 킷은 'v' 접두사 없이 버전을 사용하고 bottlerocket 리포지토리는 'v' 접두사를 사용한다는 점입니다. 이 스킬은 x86_64 및 aarch64 아키텍처를 모두 지원하며, 검증 단계에서 각 커밋이 올바르게 생성되었는지 확인합니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/cbgbt/bottlerocket-forest/tree/main/skills/update-twoliter

Installed? Explore more 코딩 & 개발 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

스킬: 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: 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: 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: 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: twoliter X.Y.Z로 업데이트"

관련 스킬

  • 없음(독립형 스킬)

참고 사항

  • 이 스킬은 커밋을 푸시하거나 풀 리퀘스트를 생성하지 않습니다.
  • 커밋을 생성한 후 수동으로 푸시하고 PR을 생성할 수 있습니다.
  • PR은 새 Twoliter 버전을 테스트하기 위해 CI를 트리거합니다.
  • 스키마 버전 변경은 드물며, 릴리스 노트에 명시된 경우에만 업데이트하세요.

Individual skills in this repo

This repo contains 19 individual skills — each has its own dedicated page.

ad-hoc-implementation-plan

Transform a rough plan into implement-commit ready artifacts. Allows rigorous review while implementing.

build-kit-locally

Build a kit and publish it to a locally hosted registry for development testing

build-variant-from-local-kits

Build a variant using locally published kits for development validation

deep-research

Create educational documents that build understanding progressively with citations

edit-spec-file

Edit Bottlerocket RPM spec files following project style conventions

fact-find

Quick lookup of specific facts about Bottlerocket with citations

idea-honing

Clarify feature ideas through iterative Q&A, recording insights to guide concept development

implement-commit

Implement commits from an implementation plan using a TDD pipeline

local-registry

Start and manage a local OCI registry for Bottlerocket kit development

prepare-core-kit-release

Prepare bottlerocket-core-kit for release by bumping version and updating changelog

propose-feature-concept

Create a new feature concept document to pitch the idea and explain the problem/solution

propose-feature-design

Create or update feature technical design document with architecture and implementation guidance

propose-feature-requirements

Create or update feature requirements specification using EARS notation with examples and appendices

propose-feature-test-plan

Create a test plan mapping EARS requirements and Critical Constraints to specific tests

propose-implementation-plan

Create an implementation plan with atomic commits that build toward a complete feature

review-code

Deep code review generating PR comments via principled question-driven analysis

review-scope

Verify code changes match intended scope and requirements without exceeding boundaries

review-style

Verify code follows project style guides without providing improvement suggestions

test-local-twoliter

Build and test local changes to twoliter before releasing

관련 스킬