【发布时间】:2022-07-08 22:24:26
【问题描述】:
首先,如果此处的信息非常模糊,我深表歉意,但我不确定要添加什么或从哪里开始查找。所以我很乐意添加任何其他可能有帮助的内容。
在我的工作中,我们使用 Gitlab 进行源代码控制和 CI/CD。一切都很好,直到几天前,几个项目在尝试访问包时突然开始显示错误。
当 gitlab 上运行的管道使用 composer 从 gitlab repo 下载包时,会发生错误。但是,我可以毫无问题地从我的计算机中提取存储库和软件包。
现在这些包仓库也托管在同一个 gitlab 帐户上。所有这一切都是由一位比我更了解开发运维的前员工设置的。
收到此错误
Failed to download project/package-name from dist: Could not authenticate against gitlab.com
但是,来自同一个 repo 的另一个包可以正常下载。而且由于我们没有进行任何更改,所以我现在无法理解导致此错误的原因。
提取 repos 的项目使用 auth.json 文件中设置的 'gitlab.com' 的 'gitlab-token',该文件尚未更改。
我知道这些问题在这里很难调试,但希望有人可以帮助我。谢谢
【问题讨论】:
-
您是如何下载项目的?你的意思是
git clone …?之前的员工是否也打包了所有者/维护者并设置了令牌?如果是,他的用户是否已从项目中删除?这可能会导致他的个人访问令牌无效。一般来说,作为一个团队,您应该使用 组令牌(参见此处:docs.gitlab.com/ee/user/group/settings/group_access_tokens.html)。您也可以始终使用 https 并使用您的用户名/密码组合。另一种解决方案是在一台机器上生成一个 SSH 密钥并通过 SSH 使用它。 -
我会检查该用户的帐户最近是否被删除。我可以访问 repo 并将其推送到,因为我使用 SSH 密钥。感谢有关组访问令牌的提示,我可以设置它。但是我设置好之后,这个token会加到哪里呢?
-
链接中都有说明。您将使用
https与空白用户名和令牌作为密码。 -
谢谢,有帮助。它导致我向上推我的 auth.json 文件,直到现在 gitignore 都忽略了该文件 - 这修复了管道错误。但我认为在 repo 中显示 auth.json(和 gitlab.com 令牌)存在安全问题,因此它被忽略了。在不推文件的情况下,我可以将此令牌添加到我的仓库中的某个位置吗?因为到目前为止它一定是这样的吗?
标签: gitlab