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
标志来搜索具有双星 glob 的路径。
yamlfmt -dstar ** / * .{yaml,yml}
有关此格式的更多信息,请参阅 doublestar 包。
可以通过名为.yamlfmt
的 yaml 文件配置yamlfmt
命令。该文件可以位于您的工作目录、通过 CLI 标志指定的路径或系统上的标准全局配置路径中(有关详细信息,请参阅文档)。有关深入的配置文档,请参阅 Config。
注意:从 v0.14.0 开始支持使用 cosign 进行验证。
如果您直接从发行版获取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