栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

GitLab API使用及如何删除某项目的Pipelines流水线和jobs

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

GitLab API使用及如何删除某项目的Pipelines流水线和jobs

GitLab API使用及如何删除某项目的Pipelines流水线和jobs
  • 创建访问令牌 API Token
  • 相关API操作

创建访问令牌 API Token

PRIVATE-TOKEN获取

登录gitlab 进入 User Settings -> Access Tokens
在这个页面创建一个api令牌,其中范围必须勾选api, read_user;read_repository 可以视个人情况勾选
相关API操作

前置说明:
your-private-token: 为上一步创建的个人访问令牌
YOUR_PROJECT_ID:为对应项目的project id
YOUR_PIPELINE_ID:待删除的流水线id

注意:下方所有命令的 your-private-token、YOUR_PROJECT_ID 和YOUR_PIPELINE_ID均需要根据实际情况修改

查看当前token下的所有Project,即查看自己拥有的project

curl --header "PRIVATE-TOKEN:your-private-token" https://your-gitlab-server/api/v4/projects

查看project的member

curl --header "PRIVATE-TOKEN:your-private-token" "https://your-gitlab-server/api/v4/projects/YOUR_PROJECT_ID/members"

查看某个项目的流水线

curl --header ""PRIVATE-TOKEN:your-private-token" "https://your-gitlab-server/api/v4/projects/YOUR_PROJECT_ID/pipelines/"

// 如:查看86号项目的流水线
curl --header ""PRIVATE-TOKEN:your-private-token" "https://your-gitlab-server/api/v4/projects/86/pipelines/"

删除某个项目的某条CI流水线

curl --header ""PRIVATE-TOKEN:your-private-token" --request "DELETe" "https://your-gitlab-server/api/v4/projects/YOUR_PROJECT_ID/pipelines/YOUR_PIPELINE_ID"

// 如:删除86号项目的308流水线
curl --header ""PRIVATE-TOKEN:your-private-token" --request "DELETE" "https://your-gitlab-server/api/v4/projects/86/pipelines/308"

对于需要批量删除pipelines的情况,可参考
Mass deletion script fixed for the lazy, delete X pipelines from the oldest.

Note: need jq.

#!/bin/bash
set -e

TOKEN=""
PROJECT=""
# How many to delete from the oldest.
PER_PAGE=100

for PIPELINE in $(curl --header "PRIVATE-TOKEN: $TOKEN" "https://gitlab.com/api/v4/projects/$PROJECT/pipelines?per_page=$PER_PAGE&sort=asc" | jq '.[].id') ; do
    echo "Deleting pipeline $PIPELINE"
    curl --header "PRIVATE-TOKEN: $TOKEN" --request "DELETE" "https://gitlab.com/api/v4/projects/$PROJECT/pipelines/$PIPELINE"
done

注意:
示例链接中的gitlab服务器地址是使用http://your-gitlab-server还是https://your-gitlab-server 得视实际情况使用,有些公司的gitlab服务器不支持https,有些不支持http

参考链接:How to delete gitlab CI jobs pipelines logs/builds and history

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/276445.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号