J. *_*Doe 4 build go goreleaser
我是 Golang 的绝对新手,但我想修改 Go 构建脚本以仅在本地构建文件,而不是将其发布到 GitHub。
https://github.com/dahendel/docker-machine-driver-cloudstack/blob/master/.goreleaser.yml
如何进行?
小智 7
我已经克隆了您的存储库并在我的本地计算机上尝试。步骤如下:
\ngit克隆
\n执行试运行(在“真正”发布之前测试所有内容:
\n$ goreleaser release --skip-publish\nRun Code Online (Sandbox Code Playgroud)\n显示没有错误
\n\xe2\x80\xa2 SIGNING ARTIFACTS\n \xe2\x80\xa2 pipe skipped error=artifact signing is disabled\n\xe2\x80\xa2 DOCKER IMAGES\n \xe2\x80\xa2 pipe skipped error=docker section is not configured\n\xe2\x80\xa2 PUBLISHING\n \xe2\x80\xa2 pipe skipped error=publishing is disabled\n\xe2\x80\xa2 release succeeded after 20.75s\nRun Code Online (Sandbox Code Playgroud)\n执行goreleaser进行发布
\n$ goreleaser release\nRun Code Online (Sandbox Code Playgroud)\ngoreleaser 将在项目内创建dist文件夹,该文件夹将包含分发包(deb、rpm)。
\n创建 github 或 gitlab 令牌(https://github.com/settings/tokens)并将其作为环境变量
\nexport GITHUB_TOKEN=xxxxyyyyyzzzzz\nRun Code Online (Sandbox Code Playgroud)\n解决问题。
\n正如我在你看到的goreleaser.yaml
hooks:\npre: dep ensure\nRun Code Online (Sandbox Code Playgroud)\n您正在使用 dep Ensure,检查$GOPATH并确保$GOPATH指向 Go 项目的正确路径。
之前已经创建了 dist 文件夹,您可以手动删除该文件夹或--rm-dist在执行 goreleaser 命令时添加标志
$ goreleaser release --skip-publish --rm-dist\nRun Code Online (Sandbox Code Playgroud)\n这个错误是因为我在mac机器上运行所以没有安装rpmbuild而发生的,安装rpm,rpmbuild解决这个问题
\n$ brew install rpm\nRun Code Online (Sandbox Code Playgroud)\nGoreleaser 似乎会检查文件差异,因为运行钩子(dep 确保)更新 Gopkg.lock 并且此更改/更新不会推送到 git。解决方案始终是将更改推送到 git。
\n从 GoReleaser 文档中读取“GoReleaser 强制执行语义版本控制,并且在不兼容的标签上会出错。您的标签应该是有效的语义版本。如果不是,GoReleaser 将出错。”
\n推送到 git 后,请确保必须更新标签,在本例中我将标签更新为 v1.0.6(之前为 v1.0.5)。
\n确保发布文本在那里。
\n希望有帮助
\n| 归档时间: |
|
| 查看次数: |
2704 次 |
| 最近记录: |