Skip to content

Commit 0092d10

Browse files
authored
fix for error capture script (#2633)
1 parent 9b98f32 commit 0092d10

File tree

1 file changed

+5
-2
lines changed

1 file changed

+5
-2
lines changed

metaflow/plugins/argo/capture_error.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import json
22
import os
3-
from datetime import datetime
3+
from datetime import datetime, timezone
44

55
###
66
# Algorithm to determine 1st error:
@@ -26,6 +26,9 @@ def parse_workflow_failures():
2626
def group_failures_by_template(failures):
2727
groups = {}
2828
for failure in failures:
29+
if failure.get("finishedAt", None) is None:
30+
timestamp = datetime.now(timezone.utc).strftime("%Y-%m-%dT%H:%M:%SZ")
31+
failure["finishedAt"] = timestamp
2932
groups.setdefault(failure["templateName"], []).append(failure)
3033
return groups
3134

@@ -53,7 +56,7 @@ def determine_first_error():
5356
grouped_failures = group_failures_by_template(failures)
5457
for group in grouped_failures.values():
5558
group.sort(
56-
key=lambda x: datetime.strptime(x["finishedAt"], "%Y-%m-%dT%H:%M:%SZ")
59+
key=lambda g: datetime.strptime(g["finishedAt"], "%Y-%m-%dT%H:%M:%SZ")
5760
)
5861

5962
earliest_group = grouped_failures[

0 commit comments

Comments
 (0)