使用Travis-CI,是否可以在不向GitHub推送新提交的情况下触发重建?
使用案例:由于外部性,构建失败.来源实际上是正确的.如果只是重新运行,它将构建好并通过.
例如,apt-get由于程序包服务器关闭而导致失败,但服务器又重新启动.但是,在推送新提交之前,构建状态"卡在""失败".
有没有办法推动Travis-CI做另一个构建,除了推动"虚拟"提交?
jbt*_*ule 438
如果你有回购写访问:在构建的细节画面,有一个按钮↻与提示"重新启动构建".
注意:像Ghostery这样的浏览器扩展可能会阻止显示重启按钮.尝试禁用扩展或白名单Travis CI.
注意2:如果.travis.yml上游的配置发生了变化,单击"重建"按钮将使用旧配置运行travis.要为travis配置应用上游更改,必须向PR添加提交或关闭/重新打开它.
如果您发送了拉取请求:您可以关闭PR然后再次打开它.这将触发新的构建.

Aar*_*ill 204
如果在GitHub上打开存储库的Settings选项卡,单击Integrations&services,找到Travis CI并单击Edit,您将看到Test Service按钮.这将触发构建.
小智 77
我知道你说的是没有推送提交,但是如果你在master之外的分支上工作,那么方便的事情就是提交一个空提交.
git commit --allow-empty -m "Trigger"
你可以在最后重新定义并删除壁球/删除空提交并在所有git钩子上工作:)
Vla*_*lov 28
我找到了另一种强制重新运行CI构建和其他触发器的方法:
git commit --amend --no-edit没有任何更改.这将重新创建当前分支中的最后一次提交.git push --force-with-lease origin pr-branch.Jua*_*uan 22
登录Travis并转到构建页面.您将在齿轮图标旁边的右上角看到"重新构建"按钮:

注意:您需要具有对链接的GitHub存储库的写访问权才能使其正常工作.
Sam*_*man 16
您可以使用Travis CLI执行此操作.如文档中所述,首先安装CLI工具,然后:
travis login --org --auto
travis token
Run Code Online (Sandbox Code Playgroud)
您可以将此令牌保留在环境变量中TRAVIS_TOKEN,只要您保留的文件不是公共版本控制的.
我用这个函数提交触发器:
function travis_trigger() {
local org=$1 && shift
local repo=$1 && shift
local branch=${1:-master} && shift
body="{
\"request\": {
\"branch\": \"${branch}\"
}
}"
curl -s -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-H "Travis-API-Version: 3" \
-H "Authorization: token $TRAVIS_TOKEN" \
-d "$body" \
"https://api.travis-ci.org/repo/${org}%2F${repo}/requests"
}
Run Code Online (Sandbox Code Playgroud)
ico*_*ast 10
Travis现在提供了一种从Web UI触发"自定义"构建的方法.在项目页面顶部附近的右侧查找"更多选项"菜单按钮.
然后,您将看到一个对话框,您可以在其中选择分支并自定义配置:
在我写这篇文章的时候,它处于测试阶段,并且看起来有些小问题(但我希望他们能很快解决问题).
如果安装Travis CI Client,则可以使用travis restart <job#>从控制台手动重新运行构建.您可以找到分支的最后一个作业#travis show <branch>
travis show master
travis restart 48 #use Job number without .1
travis logs master
Run Code Online (Sandbox Code Playgroud)

更新:遗憾的是,看起来这并没有使用最新的提交启动新的构建,而只是使用repo的先前状态重新启动以前的构建.
| 归档时间: |
|
| 查看次数: |
86752 次 |
| 最近记录: |