How do I programmatically retrieve a list of GKE (Kubernetes) releases including dates?

5/28/2019

My team maintains a simple inventory spreadsheet for the components that we run on our organization's shared infrastructure. We own various critical services that are consumed by other dev teams, so we want to stay on top of keeping things patched and up-to-date within ~6 months.

I've been working on automating the part of this spreadsheet that records all available versions and the date of our release, so that I don't have to go clicking around checking for new releases and entering them into the sheet every few weeks. This is used to flag components in our stack that are out of date.

In most cases, this is as simple as querying the GitHub API for Releases. In a couple of other cases such as the Google Cloud SDK I can scrape a web page with a simple selector.


I can't find a way to do this for Google Kubernetes Engine (GKE) releases. The release notes are here:

https://cloud.google.com/kubernetes-engine/docs/release-notes

This page is fairly oddly structured, and there's no obvious way to scrape it to build a CSV with release and date. I can't just use the GitHub releases for kubernetes/kubernetes, as GCP run everything on a different schedule and run their own patch series with -gke suffixes.

I found this StackOverflow question, but the answer there doesn't quite cover what I need gcloud container get-server-config returns a list of available node and master versions, but there are no dates associated with them, so the information is fairly opaque.


I'd love to know if I'm missing something. A canonical release list seems like an obvious record to maintain in this day and age, but I've searched high and low without luck.

-- Cera
google-cloud-platform
google-kubernetes-engine
kubernetes

0 Answers