You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在GitLab CI任务中通过URL下载作业产物artifacts

GitLab 流水线产物下载操作示例

你不需要安装额外工具,也不需要复杂配置,可根据项目公开属性选择对应方案操作:

公开项目(无需令牌)

公开项目的公开流水线产物可以直接下载,两种常用方式:

  • 浏览器直接下载:将拿到的产物URL粘贴到浏览器地址栏回车,即可自动触发下载
  • 命令行调用(使用系统默认自带的curl,无需额外安装):
curl -O "https://<你的GitLab实例域名>/<项目命名空间>/<项目名>/-/jobs/artifacts/<目标分支名>/download?job=<产出产物的作业名称>"

私有项目/非公开产物(需简单配置访问令牌)

如果是私有项目,或者产物设置了访问权限,仅需先创建一个只读权限的访问令牌即可:

  1. 打开GitLab个人设置,进入「访问令牌」页面,创建一个仅勾选read_api权限的个人访问令牌,生成后复制保存(令牌仅显示一次)
  2. 命令行下载示例:
    • 使用curl:
    curl -O --header "PRIVATE-TOKEN: <你生成的访问令牌值>" "https://<你的GitLab实例域名>/<项目命名空间>/<项目名>/-/jobs/artifacts/<目标分支名>/download?job=<产出产物的作业名称>"
    
    • 如果你已安装wget也可以使用:
    wget --header "PRIVATE-TOKEN: <你生成的访问令牌值>" "https://<你的GitLab实例域名>/<项目命名空间>/<项目名>/-/jobs/artifacts/<目标分支名>/download?job=<产出产物的作业名称>"
    

注意:生成访问令牌时仅勾选read_api权限即可,不要授予更高权限降低安全风险;不要将令牌明文硬编码到公开脚本中,建议通过环境变量存储调用。

如果需要下载产物包中的单个指定文件,只需将URL末尾的download?job=<作业名>替换为raw/<文件在产物中的完整路径>?job=<作业名>即可。

内容的提问来源于stack exchange,提问作者Alex

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 15:06:05