如何通过REST API访问及修改GitLab的CI作业令牌跨项目访问设置?
可以通过API修改该设置
这个对应GitLab中控制CI作业令牌跨项目访问的配置,完全可以通过REST API操作,具体方式如下:
1. 批量设置允许访问的项目
使用项目更新接口,一次性配置所有允许的项目:
curl --request PUT \ --header "PRIVATE-TOKEN: <你的访问令牌>" \ "https://你的GitLab实例地址/api/v4/projects/<当前项目ID或路径>" \ --data "ci_job_token_allowed_projects[]=目标项目ID1&ci_job_token_allowed_projects[]=目标项目ID2"
参数说明:
<你的访问令牌>:需拥有当前项目维护者/所有者权限,且令牌包含api范围<当前项目ID或路径>:支持项目数字ID,或namespace/project-name格式的路径ci_job_token_allowed_projects[]:可传入多个目标项目ID,会直接替换原有允许列表
2. 单个添加允许的项目
如果需要在现有列表中新增项目,使用专门的添加接口:
curl --request POST \ --header "PRIVATE-TOKEN: <你的访问令牌>" \ "https://你的GitLab实例地址/api/v4/projects/<当前项目ID或路径>/ci_job_token/allowed_projects" \ --data "target_project_id=目标项目ID"
3. 单个移除允许的项目
要从列表中删除某个项目,使用删除接口:
curl --request DELETE \ --header "PRIVATE-TOKEN: <你的访问令牌>" \ "https://你的GitLab实例地址/api/v4/projects/<当前项目ID或路径>/ci_job_token/allowed_projects/<目标项目ID>"
注意:操作前确保你的访问令牌权限足够,且GitLab版本在13.5及以上(该API从这个版本开始正式支持)。
内容的提问来源于stack exchange,提问作者Zang MingJie
相关产品推荐
相关产品推荐

