专为 Go 而生的构建利器,GVM 驱动,轻松搞定多版本编译和二进制打包,开箱即用,效率满满。
$:
tag_push:
- stages:
- name: gvm go build
image: docker.cnb.cool/zhiqiangwang/cnb/gvm:latest
settings:
version: ${CNB_BRANCH}
binname: myapp
temp_path: dist
main_go: main.go
pack_files: "LICENSE README.md"
- name: release upload attachments
image: cnbcool/attachments:latest
settings:
attachments:
- ./dist/*.sha256
- ./dist/*.md5
- ./dist/*.zip
- ./dist/*.tar.gz
go_version: 由 GVM 管理的 Go 版本,默认值是:go1.23.12temp_path: 临时构建输出目录,默认值是:distmain_go: Go 入口文件,默认值是:main.goversion: 构建版本(用于 -ldflags),默认值是:mainbinname: 二进制输出名称,默认值是:mainbuild_envs: 额外的构建环境变量,默认值是:CGO_ENABLED=0build_flags: Go 构建标志,默认值是:-ldflags '-s -w -X main.version=${build_version}'archs: 目标构建平台,默认值是:windows/amd64, windows/arm64, linux/amd64, linux/arm64, darwin/amd64, darwin/arm64pack_files: 额外打包的文件,默认值是:(空)