diff --git a/scripts/cancel_pipelines.py b/scripts/cancel_pipelines.py index 497484a7d41fccb3121a5fd021696aa2b3994ff2..b2a43276050c68590e8d5aad3bbc7fc8724bfc10 100755 --- a/scripts/cancel_pipelines.py +++ b/scripts/cancel_pipelines.py @@ -24,6 +24,10 @@ def cancel_pipeline_including_children( cancelled_pipelines = [] + if pipeline.status not in ["success", "failed", "canceled"]: + cancelled_pipelines.append(pipeline) + pipeline.cancel() + # Browse through all downstream pipelines for bridge in pipeline.bridges.list(as_list=False): @@ -41,10 +45,6 @@ def cancel_pipeline_including_children( cancelled_pipelines += cancel_pipeline_including_children( project, downstream_pipeline ) - if downstream_pipeline.status not in ["success", "failed", "canceled"]: - cancelled_pipelines.append(downstream_pipeline) - - pipeline.cancel() return cancelled_pipelines @@ -73,8 +73,6 @@ def cancel_pipelines( for pipeline in pipelines: if pipeline.id < below_pipeline_id: cancelled_pipelines += cancel_pipeline_including_children(project, pipeline) - if pipeline.status not in ["success", "failed", "canceled"]: - cancelled_pipelines.append(pipeline) return cancelled_pipelines