【问题标题】:How can I download gitlab CI/CD artifacts with curl?如何使用 curl 下载 gitlab CI/CD 工件?
【发布时间】:2020-05-07 22:24:05
【问题描述】:

我们的 gitlab CI/CD 网络界面让我们在成功运行后下载“工件”(例如可执行文件、共享库),如下面的屏幕截图所示:


问题:有没有办法可以从 shell 下载工件?(首选使用 curl 的解决方案)

Copy Link Location”右键菜单选项给了我类似https://git.my_company.com/namespace/project/-/jobs/987134/artifacts/download的信息,所以我尝试了以下操作:

$ curl -O -L https://git.my_company.com/namespace/project/-/jobs/987134/artifacts/download

但这并没有下载正确的东西:它给了我一个 html 的呕吐物,但我期待一个 .zip 文件。

如果我尝试从网页界面下载文件,文件名默认为artifacts.zip,所以我也尝试了:

$ curl -O -L https://git.my_company.com/namespace/project/-/jobs/987134/artifacts/download/artifacts.zip

创建了一个名为 artifacts.zip 的文件,但它仍然不是预期的文件:它仍然是 html,尽管与第一次描述的尝试不同。

【问题讨论】:

标签: git curl continuous-integration gitlab


【解决方案1】:

您的答案在此处描述:https://docs.gitlab.com/ee/ci/pipelines/job_artifacts.html#downloading-artifacts

下载整个工件存档的 URL 结构如下:

https://example.com/<namespace>/<project>/-/jobs/artifacts/<ref>/download?job=<job_name>

【讨论】:

    【解决方案2】:

    对于公共存储库,

    转到Settings &gt; General &gt; Permissions &gt; Pipelines must be "Everyone with access".

    【讨论】:

      猜你喜欢
      • 2022-08-14
      • 2023-01-13
      • 2022-07-27
      • 2022-01-09
      • 2022-01-19
      • 1970-01-01
      • 2021-12-24
      • 2021-12-22
      • 2020-02-02
      相关资源
      最近更新 更多