mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-09-20 16:50:48 +00:00
Attempt to fix wrong workflow_run data for rerun
This commit is contained in:
parent
061e61919a
commit
0db9dda5f3
@ -402,10 +402,27 @@ def main(event):
|
||||
workflow_description = get_workflow_description_from_event(event_data)
|
||||
|
||||
print("Got workflow description", workflow_description)
|
||||
if (
|
||||
workflow_description.action == "completed"
|
||||
and workflow_description.conclusion == "failure"
|
||||
):
|
||||
if workflow_description.action == "completed":
|
||||
attempt = 0
|
||||
# Nice and reliable GH API sends from time to time such events, e.g:
|
||||
# action='completed', conclusion=None, status='in_progress',
|
||||
# So let's try receiving a real workflow data
|
||||
while workflow_description.conclusion is None and attempt < MAX_RETRY:
|
||||
progressive_sleep = 3 * sum(i + 1 for i in range(attempt))
|
||||
time.sleep(progressive_sleep)
|
||||
event_data["workflow_run"] = _exec_get_with_retry(
|
||||
workflow_description.api_url
|
||||
)
|
||||
workflow_description = get_workflow_description_from_event(event_data)
|
||||
attempt += 1
|
||||
|
||||
if workflow_description.conclusion != "failure":
|
||||
print(
|
||||
"Workflow finished with status "
|
||||
f"{workflow_description.conclusion}, exiting"
|
||||
)
|
||||
return
|
||||
|
||||
print(
|
||||
"Workflow",
|
||||
workflow_description.url,
|
||||
|
Loading…
Reference in New Issue
Block a user