GitLab CI中能否用CI_JOB_TOKEN下载Packages文件?
GitLab CI_JOB_TOKEN 下载Packages文件的解决方案
- 核心结论:CI_JOB_TOKEN默认无Packages读取权限,导致下载失败,但可以通过配置权限解决,并非必须创建项目访问令牌。
- 具体操作路径:
- 单项目内下载:
进入项目的「Settings > CI/CD > Token Access」,开启「Allow access to the project with CI_JOB_TOKEN」,然后在权限列表中勾选「Packages」的读取权限,保存后CI_JOB_TOKEN即可正常下载当前项目Packages中的文件。 - 跨项目下载:
除了在目标项目开启上述权限,还要在当前项目的「Settings > CI/CD > Token Access」里,将目标项目添加到「Allowed projects」列表,并授予Packages读取权限。
- 单项目内下载:
- 关于议题进展:你提到的相关讨论截至2024年仍在推进,尚未实现CI_JOB_TOKEN默认具备Packages访问权限,所以需要手动配置权限。
- 项目访问令牌的替代场景:如果不想修改CI_JOB_TOKEN的权限范围,或者需要在CI环境外访问Packages,创建带Packages读取权限的项目访问令牌并存储为CI变量,也是可行方案。
内容的提问来源于stack exchange,提问作者Snark
相关产品推荐
相关产品推荐

