来自 gitlab-ci 的状态不再显示在 gitlab 合并请求中
Posted
技术标签:
【中文标题】来自 gitlab-ci 的状态不再显示在 gitlab 合并请求中【英文标题】:Status from gitlab-ci not showing up anymore on gitlab merge request 【发布时间】:2014-04-22 11:00:21 【问题描述】:据我所知,Gitlab-CI 运行良好。它运行并按应有的方式执行所有操作,但 gitlab 本身不显示状态。
我一直看到的是“检查 x 的 CI 状态”,微调器静止不动。
我得到的唯一线索是打开页面时的 gitlab production.log:
OpenSSL::SSL::SSLError (SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed):
app/models/project_services/gitlab_ci_service.rb:39:in `commit_status'
app/controllers/projects/merge_requests_controller.rb:165:in `ci_status'
app/controllers/application_controller.rb:57:in `set_current_user_for_thread'
至少可以说这很奇怪。其他一切都很好,所以它对 gitlab 整体来说似乎并不系统。
Gitlab 详情:
GitLab 6.6.4
GitLab Shell 1.8.4
GitLab API v3
Ruby 1.9.3p194
Rails 4.0.3
GitLab CI 4.3.0 267edb0
我四处寻找,没有发现类似的问题。令人费解的是,它在 gitlab 中从 6.something 升级到 6.6.4 后停止工作。这不是关键部分,但消除了 CI 服务器的一些易用性。
【问题讨论】:
【参考方案1】:我同意@ma_li,错误很可能是由于自签名证书。您应该避免在公共 URL 上使用自签名证书,因为这很容易被破解。相反,如果您不想购买,您可以申请免费的 SSL 证书,例如。来自 StartSSL https://www.startssl.com/
【讨论】:
您应该不使用 StartSSL 证书,因为它们不受 Chrome 的信任。 Let's Encrypt 是一个更好的选择。 我完全同意,今天也是如此 :) StartSSL 已失效,因为我已经写了我的答案。【参考方案2】:也许您正在使用自签名证书?我必须修补我的 Gitlab CI like this,然后设置 config.verify_ssl = false
。
编辑:也许我应该提出一个拉取请求? :)
【讨论】:
以上是关于来自 gitlab-ci 的状态不再显示在 gitlab 合并请求中的主要内容,如果未能解决你的问题,请参考以下文章