我正在寻找的是每晚或每次提交都构建C ++代码的东西,然后,至关重要的是,运行一些命令来创建一个zip或一个包,然后可以将其添加到GitHub上的“Release”。
我知道有travis-CI,它会自动编译提交,它可以运行例如CMake INSTALL目标,然后运行CPack,这将创建一个zip或安装程序包。但是不可能将这些文件上传到GitHub或在某处显示它们。
我在想,也许还有其他可用的服务与GitHub集成,但无法找到任何Google点击量。优选地,这将与travis-CI分开,因为在travis上,您将运行类似调试的构建(静态分析器等)。对于要部署的版本,您需要发布版本标记,构建文档等。
这是一个开源项目,所以我正在寻找一些免费为开源项目做的事情,最好不要设置自己的服务器基础设施。
有一些相关的帖子,如Travis-CI Auto-Tag Build for GitHub Release或travis section on deployment,但他们并没有真正回答我的问题。
答案 0 :(得分:2)
您可以使用travis-CI,查看文档中的“构建工件”。
https://docs.travis-ci.com/user/deployment/releases/
在撰写本文时,它看起来像这样:
GitHub发布上传
Travis CI可以自动将
$TRAVIS_BUILD_DIR
中的资源上传到GitHub存储库中的git标签。请注意,部署GitHub版本仅适用于标记,不适用于分支。
要进行最低限度配置,请将以下内容添加到
.travis.yml
:deploy: provider: releases api_key: "GITHUB OAUTH TOKEN" file: "FILE TO UPLOAD" skip_cleanup: true on: tags: true
基本上你必须标记你想要上传的每个提交,所以你可以定期做一个cron工作,或者只在发生有趣工作的那些日子里手工完成。
或者,您可以将所有版本上传到Google云端存储帐户或亚马逊s3帐户,然后您可以从那里开始工作。请参阅文档,例如here。