yamlfmt
는 yaml 파일 형식을 지정하는 확장 가능한 명령줄 도구 또는 라이브러리입니다.
이 도구는 아직 Google에서 공식적으로 지원되지 않습니다. 현재는 @braydonk에 의해서만 유지관리되고 있으며 주로 여가 시간에 변경되는 사항이 없는 한 그렇습니다.
좀 더 적절한 것을 설정할 수 있을 때까지 GitHub 토론에 대한 이러한 링크를 일종의 블로그로 사용할 것입니다.
yamlfmt
명령을 다운로드하려면 릴리스에서 원하는 바이너리를 다운로드하거나 모듈을 직접 설치할 수 있습니다.
go install github.com/google/yamlfmt/cmd/yamlfmt@latest
현재 Go 버전 1.18 이상이 필요합니다.
참고: Go를 처음 설치하는 경우 권장되는 설정은 이 DigitalOcean 블로그 게시물에 있습니다.
릴리스에서 원하는 바이너리를 다운로드할 수도 있습니다. 바이너리는 종속성 없이 자급자족하며 간단히 PATH 어딘가에 배치하고 yamlfmt
명령을 사용하여 실행할 수 있습니다. 여기에서 공개된 아티팩트의 진위 여부를 확인하는 방법에 대해 자세히 알아보세요.
명령을 커밋 전 후크로 설치할 수도 있습니다. 지침은 사전 커밋 후크 문서를 참조하세요.
자세한 정보와 사용 가능한 플래그는 명령 사용법을 참조하세요.
모든 기본 설정으로 도구를 실행하려면 경로 인수를 사용하여 명령을 실행합니다.
yamlfmt x.yaml y.yaml < ... >
원하는 만큼 경로를 지정할 수 있습니다. 확장자가 .yaml
또는 .yml
인 모든 파일을 반복적으로 검색할 디렉터리를 지정할 수도 있습니다.
yamlfmt .
-dstar
플래그를 제공하여 doublestar glob으로 경로를 검색하는 대체 모드를 사용할 수도 있습니다.
yamlfmt -dstar ** / * .{yaml,yml}
이 형식에 대한 자세한 내용은 doublestar 패키지를 참조하세요.
yamlfmt
명령은 .yamlfmt
라는 yaml 파일을 통해 구성할 수 있습니다. 이 파일은 작업 디렉터리, CLI 플래그를 통해 지정된 경로 또는 시스템의 표준 전역 구성 경로에 있을 수 있습니다(자세한 내용은 문서 참조). 자세한 구성 문서는 구성을 참조하세요.
참고: cosign을 통한 검증 지원은 v0.14.0부터 제공됩니다.
릴리스에서 직접 yamlfmt
바이너리를 얻은 경우 진위 여부를 확인할 수 있습니다. 릴리스된 모든 아티팩트에 체크섬이 적용되고 결과 체크섬 파일은 cosign을 사용하여 서명됩니다.
확인 단계(아래 나열된 명령의 ABC
원하는 버전으로 바꾸세요):
릴리스에서 다음 파일을 다운로드합니다.
curl -sfLO https://github.com/google/yamlfmt/releases/download/vA.B.C/checksums.txt
curl -sfLO https://github.com/google/yamlfmt/releases/download/vA.B.C/checksums.txt.pem
curl -sfLO https://github.com/google/yamlfmt/releases/download/vA.B.C/checksums.txt.sig
서명을 확인합니다.
cosign verify-blob checksums.txt
--certificate checksums.txt.pem
--signature checksums.txt.sig
--certificate-identity-regexp ' https://github.com/google/yamlfmt/.github/workflows/.+ '
--certificate-oidc-issuer " https://token.actions.githubusercontent.com "
원하는 압축 아카이브를 다운로드하고 체크섬을 확인하세요.
curl -sfLO https://github.com/google/yamlfmt/releases/download/vA.B.C/yamlfmt_A.B.C_Linux_x86_64.tar.gz
sha256sum --ignore-missing -c checksums.txt
체크섬 검증이 완료되면 아카이브의 압축을 해제합니다.
tar -xzf yamlfmt_A.B.C_Linux_x86_64.tar.gz
./yamlfmt