mirror of
https://github.com/espressif/esp-idf.git
synced 2024-10-05 20:47:46 -04:00
ci: add find job id argument job status:
if we retry failed job, we will have 2 jobs with same name in one pipeline. we need to use status to find the retried job instead of failed job.
This commit is contained in:
parent
7f84669054
commit
1fa6db757d
@ -96,12 +96,14 @@ class Gitlab(object):
|
|||||||
|
|
||||||
return raw_data_list
|
return raw_data_list
|
||||||
|
|
||||||
def find_job_id(self, job_name, pipeline_id=None):
|
def find_job_id(self, job_name, pipeline_id=None, job_status="success"):
|
||||||
"""
|
"""
|
||||||
Get Job ID from job name of specific pipeline
|
Get Job ID from job name of specific pipeline
|
||||||
|
|
||||||
:param job_name: job name
|
:param job_name: job name
|
||||||
:param pipeline_id: If None, will get pipeline id from CI pre-defined variable.
|
:param pipeline_id: If None, will get pipeline id from CI pre-defined variable.
|
||||||
|
:param job_status: status of job. One pipeline could have multiple jobs with same name after retry.
|
||||||
|
job_status is used to filter these jobs.
|
||||||
:return: a list of job IDs (parallel job will generate multiple jobs)
|
:return: a list of job IDs (parallel job will generate multiple jobs)
|
||||||
"""
|
"""
|
||||||
job_id_list = []
|
job_id_list = []
|
||||||
@ -112,7 +114,7 @@ class Gitlab(object):
|
|||||||
for job in jobs:
|
for job in jobs:
|
||||||
match = self.JOB_NAME_PATTERN.match(job.name)
|
match = self.JOB_NAME_PATTERN.match(job.name)
|
||||||
if match:
|
if match:
|
||||||
if match.group(1) == job_name:
|
if match.group(1) == job_name and job.status == job_status:
|
||||||
job_id_list.append({"id": job.id, "parallel_num": match.group(3)})
|
job_id_list.append({"id": job.id, "parallel_num": match.group(3)})
|
||||||
return job_id_list
|
return job_id_list
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user