为什么我在 Gitlab 合并请求中得到 "Pipeline failed due to the user not being verified" & "Detached merge request pipeline"?

Why am I getting "Pipeline failed due to the user not being verified" & "Detached merge request pipeline" on a Gitlab merge request?

当非所有者开发人员将分支推送到我们的 Gitlab 存储库时,它 returns 一条“管道失败”消息,详细信息“由于用户未被验证,管道失败”。在开发人员的帐户上,他收到添加信用卡的提示,以验证他是否有资格获得免费管道分钟数。

但我还没有设置任何管道——我的仓库中没有 gitlab-ci.yml 文件,新分支也没有。 Gitlab 上项目的 CI/CD 选项卡下没有工作或计划。那么为什么有一个标记说管道中的分支失败了?

Gitlab 更新了 GitLab.com 上可用的免费流水线分钟数。

解决问题:

  1. 提供信用卡或借记卡并使用共享跑步者的 400 分钟免费时间。
  2. 您使用自己的运行器并为他们的项目禁用共享运行器。

此致。

他们说他们不会 charge 帐户上的任何内容或存储卡的详细信息,但实际上他们收取 1 美元。 (立即反转)

因此您需要一张可以进行国际交易的卡。 (如果您不在美国)。

不知为什么网站上没有这个声明。对于像 GitLab 这样的大公司来说,绝对不好看!

至于答案,提供一张支持国际交易的 credit/debit 卡和 1 美元备用即可。

除了 Shivem Khandelwal 发布的内容外,我还发现了这个过程的 YouTube 视频:https://www.youtube.com/watch?v=s3G0qxwT11c

gitlab给的消息说不收费有点误导,因为发生的事情是:

  1. Gitlab 向您收取 1 美元
  2. Gitlab回滚事务

此流程有时未登录信用卡。也许这就是“我们不收费”这句话背后的原因

对于那些仍然想知道的人,我最近联系了 Gitlab,显然这是他们的一个开放问题。他们说无论如何都可以合并分支机构,但最后我们还是添加了信用卡详细信息(有临时收费)。不理想,但希望能尽快解决。

这可能是一个错误,请参阅https://gitlab.com/gitlab-org/gitlab/-/issues/331959


以上回答都很好,但可能对信用卡预授权有一点误解。

当我们使用信用卡时,商店会要求银行冻结这笔交易的部分信用额度(通常是总价)。一会儿(取决于商店),他们要求银行付款并获得现金。之后,银行将账单发送给用户。

预授权是一种冻结信用的行为。

如果商店不要求银行付款,银行不会给他们现金,客户也不会收到账单。

预授权是检查信用卡有效性的一种方式。一个常见的数量是一个U.S。美元。当您添加新卡时,这在 Google Play 和 App Store 中很常见。

Gitlab用这种方式确认信用卡是否有效同理

虽然这取决于他们内部的操作,但我认为Gitlab不需要专门取消交易,唯一需要做的就是确保他们不会要求银行支付这个预授权。

就我而言,我在我的项目中使用了自己的跑步者。在那种情况下,我也收到了这个错误。

我通过在我的项目中禁用共享运行器来修复错误。 在

Setting -> CICD -> Runner (Expand) -> Under the shared runner section, disable Shared runner. 

最好的办法就是把代码做得更好

为此 运行 rubocop -A 在终端中修复所有检测到的违规行为。

如果要检查每个文件,运行 rubocop -A <file path> 将您的代码设为 no offenses detected

之后,推送更改并合并

流水线会自动通过