作者:手机用户2602917665 | 来源:互联网 | 2023-01-31 18:56
我有一个要在多个项目的gitlab ci中使用的代码段。
before_script:
- curl --header "PRIVATE-TOKEN: xxx" https://gitlab.example.com/api/v4/snippets/1
- bash my_script.sh
我尝试$CI_JOB_TOKEN
在401中使用结果。是否可以在不创建用户令牌的情况下获得访问权限?
1> MrRolling..:
最简洁的答案是不。
CI_JOB_TOKEN
用于通过GitLab容器注册表进行身份验证并下载相关存储库的变量[1]。
您可以创建具有三个可见性级别[2]的个人和项目摘要,即私有,内部和公共。
专用代码段仅对代码段创建者可见,因此您需要一个个人访问令牌(具有api作用域!!!),不建议在公共/共享项目中的CI作业中使用。
建议:
创建一个内部代码段
为CI作业创建一个用户,该用户具有对项目的只读访问权限(例如ci-bot)。
使用ci-bot的访问令牌执行CI作业。
[1] https://docs.gitlab.com/ee/ci/variables/predefined_variables.html
[2] https://docs.gitlab.com/ee/api/snippets.html