我想知道是否可以在克隆存储库之前执行一些操作。事实上,据我所知,gitlab-ci 运行程序的第一个操作是在任何 script 可以执行之前克隆要构建的存储库。
我的问题:
我的插件之前执行早期操作。例如:
我知道有
before_script 操作,但它是在 after 克隆之后执行的。
我还看到运行程序的全局 config.toml 文件的 [[runner]] 部分中有pre_clone_script 选项,我想知道是否可以使用它来实现此目的。不幸的是,这意味着所有项目都将运行这个脚本,这当然不是一个好主意......
如果有人有建议,或者更好地解决这个问题,我将不胜感激!
https://docs.gitlab.com/runner/configuration/advanced-configuration.html#the-runners-section提到了pre_clone_script
但这需要修改gitlab配置
自 Gitlab 16 起,pre_clone_script
功能已被弃用,取而代之的是
pre_get_sources_script
钩子。请参阅
https://about.gitlab.com/blog/2023/03/27/changes-to-the-preclonescript/ 和 https://docs.gitlab.com/runner/configuration/advanced-configuration。 html#the-runners-section
文档说:
pre_clone_script
已弃用 - 使用 pre_get_sources_script 代替。
pre_get_sources_script
更新 Git 存储库和更新子模块之前要在运行器上执行的命令。例如,首先使用它来调整 Git 客户端配置。