我已经安装下列方式如何使用来自多个构建矩阵的TravisCI创建github发布?
language: go
go:
- 1.8.x
- master
gobuild_args: -ldflags "-X main.Version=${TRAVIS_TAG} -X main.buildTime=`date -u '+%Y-%m-%d_%I:%M:%S%p'` -X main.commitId=${TRAVIS_COMMIT}"
env:
- GOOS=linux GOARCH=amd64
- GOOS=windows GOARCH=amd64
after_success:
- ./build.sh
matrix:
allow_failures:
- go: master
这将从根本上创建4个不同的构建中TravisCI简单的Go代码库和配置TravisCI。这对于构建一个交叉编译项目非常有用,我可以分别构建windows和linux二进制文件。
我一直在努力做的事情是在Github中从这些构建中生成的所有二进制文件中创建一个单一版本?
TravisCI文档说,他们支持发布,但它如何处理这种情况非常模糊。
- 是不是所有的构建都在不同的虚拟服务器上运行?如果是这样,我如何指定每个文件
- 如果我设置一个版本,它会运行每个版本? github如何工作,它会失败,因为发布会被尝试创建多次?
有没有人试过这个?
对于Go中的跨平台编译,请查看[gox](https://github.com/mitchellh/gox)。这使得建设所有可能的平台变得轻而易举! –
谢谢,但我特意避免gox,因为我想尽可能保持标准工具。另外我没有问题建立,是发布的问题 – ByteFlinger
是感兴趣的https://github.com/travis-ci/travis-ci/issues/929?也许你可以使用脚本部署并做一些bash技巧来跳过或上传https://docs.travis-ci.com/user/deployment/script/。 –