Add job scope support for searching in pipelines
What does this MR do and why?
Expanding pipeline jobs search to be able to pass Scope of jobs to show
https://docs.gitlab.com/ee/api/jobs.html#list-pipeline-jobs
Can be helpful when searching for specific job status, for example failed
.
Related to gitlab-org/quality/quality-engineering/team-tasks#1922 (closed)
Testing
No PIPELINE_JOBS_SCOPE
passed - works as expected
GITLAB_API_ENDPOINT="https://gitlab.com/api/v4" GITLAB_API_PRIVATE_TOKEN="xxx" PIPELINE_SOURCE=schedule scripts/ci_logs gitlab-org/gitlab '' db:migrate:multi-version-upgrade '.*'
{:scope=>"finished", :source=>"schedule"}
## Fetching jobs for #1192708384 with options={}
## Fetching jobs for #1192554139 with options={}
With PIPELINE_JOBS_SCOPE
passed - searches only specific job statuses
PIPELINE_JOBS_SCOPE='failed,canceled' GITLAB_API_ENDPOINT="https://gitlab.com/api/v4" GITLAB_API_PRIVATE_TOKEN="xxxx" PIPELINE_SOURCE=schedule scripts/ci_logs gitlab-org/gitlab '' db:migrate:multi-version-upgrade '.*'
{:scope=>"finished", :source=>"schedule"}
## Fetching jobs for #1192708384 with options={:scope=>["failed", "canceled"]}
....
## Fetching jobs for #1191137810 with options={:scope=>["failed", "canceled"]}
## Fetching jobs for #1191125810 with options={:scope=>["failed", "canceled"]}
## Fetching jobs for #1191014743 with options={:scope=>["failed", "canceled"]}
## Finished 2024-02-26T14:07:41.541Z db:migrate:multi-version-upgrade (#6257992055) status=canceled
## Fetching jobs for #1190969960 with options={:scope=>["failed", "canceled"]}