@kyanny's blog

My thoughts, my life. Views/opinions are my own.

Can I use backup-utils?—version matrix of GitHub Enterprise Server and backup-utils

Can I use backup-utils version x.y.z with GitHub Enterprise Server version x.y.z?

Every time I get confused about that. So I created a version matrix.

Bonus point: it updates itself automatically!

Update 2022-11-04 redesigning architecture

How it works:

  1. GitHub Actions workflow runs on every Sunday.
  2. It fetches all backup-utils release versions.
  3. It fetches all GitHub Enterprise Server release versions.
  4. It creates the matrix.
  5. It updates the matrix table in the README and creates a CSV.
  6. It sends a GET request to Google Apps Script Web Application.
  7. GAS fetches matrix.csv and updates the spreadsheet.

It consists of two parts.

  1. Google Apps Script (GAS) to update the spreadsheet
  2. GitHub Actions workflow to convert the spreadsheet to markdown table

GAS trigger runs every Sunday. It fetches backup-utils releases atom feed so that the matrix table will be up-to-date (hopefully).

GitHub Actions workflow runs every Monday. It downloads the spreadsheet as xlsx file, parse xlsx file and convert its content to csv with roo, convert csv to markdown table (thanks to csv2md), then update README.md.

It has been a long time since I came up with this idea. The most challenging part of this project was the visualization—what is a good format for this complex information? I ended up with the current format. It mustn't be the best one, but I'm satisfied with it.