Skip to content

Commit 1284bb6

Browse files
Fix Kubernetes update script data where EOL has not yet been defined (#659)
1 parent 75534c8 commit 1284bb6

File tree

1 file changed

+20
-2
lines changed

1 file changed

+20
-2
lines changed

ci/update-kubernetes.py

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,11 +34,25 @@ def extract_dates(data):
3434
yield datetime.strptime(data["lts"], DATE_FORMAT)
3535

3636

37+
def has_eol(data):
38+
"""Check if a version has a defined end of life."""
39+
if "eol" in data and isinstance(data["eol"], str):
40+
return True
41+
if "extendedSupport" in data and isinstance(data["extendedSupport"], str):
42+
return True
43+
if "lts" in data and isinstance(data["lts"], str):
44+
return True
45+
return False
46+
47+
3748
def get_support_date(data):
49+
dates = list(extract_dates(data))
50+
if not dates:
51+
return None
3852
if SUPPORT_MODE == "standard":
39-
return min(extract_dates(data))
53+
return min(dates)
4054
elif SUPPORT_MODE == "extended":
41-
return max(extract_dates(data))
55+
return max(dates)
4256

4357

4458
def get_kubernetes_oss_versions():
@@ -54,6 +68,7 @@ def get_kubernetes_oss_versions():
5468
"eol": get_support_date(x),
5569
}
5670
for x in data
71+
if has_eol(x)
5772
]
5873
data.sort(key=lambda x: x["eol"], reverse=True)
5974
return data
@@ -71,6 +86,7 @@ def get_azure_aks_versions():
7186
"eol": get_support_date(x),
7287
}
7388
for x in data
89+
if has_eol(x)
7490
]
7591
data.sort(key=lambda x: x["eol"], reverse=True)
7692
return data
@@ -87,6 +103,7 @@ def get_amazon_eks_versions():
87103
"eol": get_support_date(x),
88104
}
89105
for x in data
106+
if has_eol(x)
90107
]
91108
data.sort(key=lambda x: x["eol"], reverse=True)
92109
return data
@@ -103,6 +120,7 @@ def get_google_kubernetes_engine_versions():
103120
"eol": get_support_date(x),
104121
}
105122
for x in data
123+
if has_eol(x)
106124
]
107125
data.sort(key=lambda x: x["eol"], reverse=True)
108126
return data

0 commit comments

Comments
 (0)