Skip to content

Commit ed31e8e

Browse files
committed
Use relativedelta to be resilient to running on some days
1 parent 43250f0 commit ed31e8e

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

release-tools/contrib/get_supported_version_csi-sidecar.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -74,9 +74,9 @@ def end_of_life_grouped_versions(versions):
7474
"""
7575
supported_versions = []
7676
# Prepare dates for later calculation
77-
now = datetime.datetime.now()
78-
one_year = now.replace(year=now.year-1)
79-
three_months = now.replace(month=now.month-3)
77+
now = datetime.date.today()
78+
one_year = now - relativedelta(years=1)
79+
three_months = now - relativedelta(months=3)
8080

8181
# get the newer versions on top
8282
sorted_versions_list = sorted(versions.items(), key=lambda x: x[0], reverse=True)
@@ -89,10 +89,10 @@ def end_of_life_grouped_versions(versions):
8989
first_release = v[1][-1]
9090
last_release = v[1][0]
9191
# if the release is less than a year old we support the latest patch version
92-
if first_release[1] > one_year:
92+
if first_release[1] >= one_year:
9393
supported_versions.append(last_release)
9494
# if the main release is older than a year and has a recent patch, this is supported
95-
elif last_release[1] > three_months:
95+
elif last_release[1] >= three_months:
9696
supported_versions.append(last_release)
9797
return supported_versions
9898

@@ -125,7 +125,7 @@ def get_versions_from_releases(repo):
125125
continue
126126
major, minor, patch = parsed_version
127127

128-
published = datetime.datetime.strptime(parts[3], '%Y-%m-%dT%H:%M:%SZ')
128+
published = datetime.datetime.strptime(parts[3], '%Y-%m-%dT%H:%M:%SZ').date()
129129
versions[(major, minor)].append((version, published))
130130
return(versions)
131131

0 commit comments

Comments
 (0)