【发布时间】: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,尽管与第一次描述的尝试不同。
【问题讨论】:
-
我创建了一个 shot shell 脚本,你可以在这里找到它:stackoverflow.com/a/65608447/4291264
标签: git curl continuous-integration gitlab