如何允许 gitlab 特定的运行器克隆私有 gitlab.com 存储库?
How to allow gitlab specific runner to clone a private gitlab.com repository?
我在 gitlab.com 上有一个私有存储库,即 不是 我自己托管的 GitLab 实例,它有 git 子模块,它是 gitlab.com。我添加了子模块并根据 Getting GitLab CI to clone private repositories 更改了 .gitmodules
中的 URL,这使得在使用来自 gitlab.com 的共享运行器时克隆工作正常。我想使用一个特定的运行器,它在我的办公桌下运行,没有特定原因(运行器适用于 public 个项目)。
我经历了
- https://docs.gitlab.com/ee/user/permissions.html
- https://docs.gitlab.com/runner/security
- https://docs.gitlab.com/ee/user/project/new_ci_build_permissions_model.html
并尝试根据一些问题报告将遥控器 URL 更改为 git clone https://<username>:<private-token>@gitlab.com/[my username]/[my submodule project name].git
。我仍然不确定这是否是允许跑步者克隆的弃用方式。
我没有找到任何关于从用户角度配置的跑步者权限的解释(从某种意义上说,我不是 gitlab.com 的管理员)。所有链接的文章都缺少关键示例、目标用户组和管理员之间的区别以及版本参考,因此可能已过时或未过时。
有必要加
variables:
GIT_SUBMODULE_STRATEGY: recursive
就像 中描述的那样,尽管它的用途并不明显。然后可以位于任何地方的特定运行器具有克隆私有存储库的权限。
我在 gitlab.com 上有一个私有存储库,即 不是 我自己托管的 GitLab 实例,它有 git 子模块,它是 gitlab.com。我添加了子模块并根据 Getting GitLab CI to clone private repositories 更改了 .gitmodules
中的 URL,这使得在使用来自 gitlab.com 的共享运行器时克隆工作正常。我想使用一个特定的运行器,它在我的办公桌下运行,没有特定原因(运行器适用于 public 个项目)。
我经历了
- https://docs.gitlab.com/ee/user/permissions.html
- https://docs.gitlab.com/runner/security
- https://docs.gitlab.com/ee/user/project/new_ci_build_permissions_model.html
并尝试根据一些问题报告将遥控器 URL 更改为 git clone https://<username>:<private-token>@gitlab.com/[my username]/[my submodule project name].git
。我仍然不确定这是否是允许跑步者克隆的弃用方式。
我没有找到任何关于从用户角度配置的跑步者权限的解释(从某种意义上说,我不是 gitlab.com 的管理员)。所有链接的文章都缺少关键示例、目标用户组和管理员之间的区别以及版本参考,因此可能已过时或未过时。
有必要加
variables:
GIT_SUBMODULE_STRATEGY: recursive
就像 中描述的那样,尽管它的用途并不明显。然后可以位于任何地方的特定运行器具有克隆私有存储库的权限。