GoReleaser:自动化你的软件发布

GoReleaser 的目标是自动化发布软件时的大部分繁琐工作,通过使用合理的默认值并使最常见的用例变得简单。 准备工作: .goreleaser.yaml 文件:包含所有配置信息。(有关更多信息,请参阅 自定义) 干净的工作树:确保代码是最新的,并且已经提交了所有改动。 符合 SemVer 的版本号(例如 10.21.34-prerelease+buildmeta) GoReleaser 的运行步骤: GoReleaser 的运行主要分为以下四个步骤: defaulting:为每个步骤配置合理的默认值 building:构建二进制文件、档案、包、Docker 镜像等 releasing:将版本发布到配置的 SCM、Docker 注册表、blob 存储等 announcing:向配置的频道宣布您的发布 使用 -like 标志可能会跳过某些步骤,如 --skip-foo 快速开始 首先,运行 init 命令来创建示例的 .goreleaser.yaml 文件: goreleaser init 然后,我们运行一个“仅限本地”版本,看看它是否可以使用 release 命令运行: goreleaser release --snapshot --rm-dist 此时,您可以 自定义 生成的 .goreleaser.yaml 文件,或保持原样,这取决于您。最佳做法是将 .goreleaser.yaml 文件放入版本控制系统中。 您还可以使用 GoReleaser 为给定的 GOOS/GOARCH 构建二进制文件,这对于本地开发非常有用: goreleaser build --single-target 准备 GitHub 的 Token: export GITHUB_TOKEN="YOUR_GH_TOKEN" GoReleaser 将使用您存储库的最新 Git 标签。...

September 16, 2023 · 41 分钟 · 8621 字 · 熊鑫伟,我