能否通过GitLab API获取项目4天前成功执行的定时流水线Job ID?
如何通过GitLab API获取4天前成功执行的定时流水线Job ID
完全可以通过GitLab API实现这个需求,具体步骤如下:
准备必要信息
- 获取项目ID:可在GitLab项目主页的「设置」-「通用」页面找到
- 生成个人访问令牌:需包含
read_api权限,在个人账号的「设置」-「访问令牌」中创建
构造API请求
使用GET /projects/:id/jobs接口,搭配以下筛选参数精准定位目标任务:scope=success:仅筛选执行成功的任务created_after:设置为4天前0点的ISO 8601格式时间(例如2024-05-16T00:00:00Z)created_before:设置为3天前0点的ISO 8601格式时间(例如2024-05-17T00:00:00Z),确保只覆盖4天前的完整时间段pipeline_source=scheduled:仅过滤定时触发的流水线任务
示例curl请求
curl --header "PRIVATE-TOKEN: <你的个人访问令牌>" "https://gitlab.example.com/api/v4/projects/<项目ID>/jobs?scope=success&created_after=2024-05-16T00:00:00Z&created_before=2024-05-17T00:00:00Z&pipeline_source=scheduled"提取Job ID
返回的JSON响应中,每个任务对象的id字段即为所需的Job ID。若定时流水线包含多个任务,可通过name字段区分目标任务。
内容的提问来源于stack exchange,提问作者sathiya
相关产品推荐
相关产品推荐

