소개
templr는 Helm과 Go의 text/template 패키지에서 영감을 받은 강력한 Go 기반 CLI 템플릿 도구입니다. 단일 파일이나 전체 디렉토리에서 고급 기능을 사용하여 템플릿을 렌더링하며, 템플릿 유효성 검사, 변수 검증, 설정 관리 등을 지원합니다.
상세정보
유연한 렌더링
단일 파일, 디렉토리 또는 재귀적 트리 순회를 통해 템플릿을 렌더링할 수 있습니다.
강력한 유효성 검사
lint 모드에서 렌더링 없이 템플릿을 유효성 검사하고, 엄격한 검증 모드로 미정의 변수와 오류를 조기에 감지합니다.
설정 관리
프로젝트 및 사용자 수준의 .templr.yaml 설정 파일을 지원하여 프로젝트별 기본값과 정책을 설정할 수 있습니다.
CI/CD 통합
특정 종료 코드와 JSON 출력을 통해 CI/CD 파이프라인에 쉽게 통합할 수 있으며, GitHub Actions도 지원합니다.
향상된 파일 처리
.Files API를 통해 파일을 읽고, JSON/YAML을 파싱하고, Base64/Hex로 인코딩하거나 파일을 검사할 수 있습니다.
설치 방법
다음과 같은 방법으로 templr를 설치할 수 있습니다:
- Homebrew (macOS/Linux): brew tap kanopi/templr 명령 후 brew install templr을 실행합니다.
- curl 스크립트: curl -fsSL https://raw.githubusercontent.com/kanopi/templr/main/get-templr.sh | bash 명령을 실행합니다.
- Docker: docker pull kanopi/templr 명령을 사용합니다 (Alpine 기반으로 약 18MB 크기).
기본 사용법
templr는 다양한 렌더링 모드를 제공합니다:
- 단일 파일 렌더링: templr render -in template.tpl -data values.yaml -out output.txt 명령을 사용합니다.
- 디렉토리 렌더링: templr dir –dir templates/ -in main.tpl -data values.yaml -out output.txt 명령을 사용합니다.
- 트리 순회: templr walk –src templates/ –dst output/ -data values.yaml 명령을 사용하여 전체 템플릿 디렉토리를 렌더링합니다.
- 유효성 검사: templr lint –src templates/ -d values.yaml 명령으로 템플릿을 검증합니다.
이런 경우에 유용합니다
- Kubernetes 매니페스트 생성: Kubernetes 설정 파일을 효율적으로 생성하고 유효성 검사할 때 유용합니다.
- 설정 파일 관리: 개발, 스테이징, 프로덕션 환경별로 여러 설정 파일을 관리해야 할 때 유용합니다.
- 문서 자동 생성: 템플릿에서 마크다운 문서를 자동으로 생성할 때 유용합니다.
- CI/CD 파이프라인: 지속적 통합/지속적 배포 워크플로우에서 템플릿 렌더링 및 검증 자동화에 적합합니다.
지원 환경
templr는 Go로 개발되어 macOS, Linux, Windows를 포함한 다양한 플랫폼에서 사용할 수 있습니다. Docker 이미지도 제공되어 컨테이너 환경에서도 실행 가능합니다.
최신 버전
최신 버전은 1.3.1이며, GitHub 저장소에서 최신 릴리스를 확인할 수 있습니다.
시스템 요구사항
별도의 시스템 요구사항이 등록되지 않았습니다.


