프로젝트 소개

kubepatch는 일반 YAML 매니페스트에 JSON Patch(RFC 6902) 작업을 적용하는 Kubernetes 배포 도구로, 템플릿이나 DSL 없이 환경별 구성을 가능하게 합니다. 기본 매니페스트는 깔끔하고 관용적인 형태로 유지하면서, 모든 환경별 변경 사항을 패치 파일로 외부화합니다. 주요 기능은 다음과 같습니다. JSON Patch만 사용(문자열 조작 없음), 일반 Kubernetes YAML 매니페스트(로직이나 어노테이션 없음), 패치 세트 선택을 통한 환경 간 배포(dev, staging, prod), 공통 레이블 주입(pod 템플릿 및 셀렉터와 같은 깊은 경로 포함), 패치 파일 내 엄격한 환경 변수 치환(접두사 기반, 확장되지 않은 플레이스홀더에서 실패). 사용법은 간단합니다. `kubepatch patch -f base/ -p patches/dev.yaml | kubectl apply -f -`. 설치 옵션으로는 바이너리, Debian/Alpine 패키지, Docker 이미지가 있습니다. 패치 파일 형식은 JSON Patch 작업을 애플리케이션과 Kubernetes 객체(kind/name)별로 그룹화합니다.