gpt4 book ai didi

gitlab-ci - .gitlab-ci.yml 是否可用于 Gitlab CI 中 GIT_STRATEGY=none 的作业?

转载 作者:行者123 更新时间:2023-12-04 12:26:00 30 4
gpt4 key购买 nike

Gitlab 文档说明了以下关于 GIT_STRATEGY: none 的内容:

none also re-uses the project workspace, but skips all Git operations (including GitLab Runner's pre-clone script, if present). It is mostly useful for jobs that operate exclusively on artifacts (e.g., deploy). Git repository data may be present, but it is certain to be out of date, so you should only rely on files brought into the project workspace from cache or artifacts.



我仍然对这应该如何工作感到有些困惑。如果不保证源代码存在,则项目工作区中可能没有源代码,因此 .gitlab-ci.yml文件也会丢失。如果没有构建脚本,作业肯定会失败。如果根据外部因素仅部分时间缺少源,则作业将随机失败,这甚至比每次都失败更糟糕。但是,如果它每次都失败,那么该功能的意义何在?

我看到的另一种可能性是 .gitlab-ci.yml可能会在运行时注入(inject),因此即使没有存储库的新副本,也会有一个构建脚本。如果是这样,我可以从我的存储库中定义更多文件以注入(inject)构建过程吗?这些特定工​​作有哪些限制?

最佳答案

是的,.gitlab-ci.yml 文件不会像所有其他文件一样复制到系统上。但这并不重要,因为作业不是从文件运行的。该作业在您的目标上作为脚本运行(甚至在此之前,因为它定义了将在其上运行的目标)。尽管您可能希望从其他服务器复制文件,但在没有 git clone 的情况下仅复制选定文件是不可能的。

什么时候运行 GIT_STRATEGY: none 的一个很好的例子当您真的不想为了推送通知而克隆数千兆字节的存储库数据时,例如 slackchat 通知作为构建的最后阶段。

关于gitlab-ci - .gitlab-ci.yml 是否可用于 Gitlab CI 中 GIT_STRATEGY=none 的作业?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46515459/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com