build: add generating compat.json (#9700)

This is to add the generation of `compat.json` as a release artifact. It
describes the runtime requirements of the release in question. The next
step is to have the upgrade server use this information to filter
releases provided to clients. This is per the discussion in #9656

---------

Co-authored-by: Ross Smith II <ross@smithii.com>
This commit is contained in:
Jakob Borg
2024-09-11 09:29:49 +02:00
committed by GitHub
co-authored by Ross Smith II
parent 718b1ce2b7
commit 0ea90dd932
7 changed files with 75 additions and 3 deletions
+28
View File
@@ -0,0 +1,28 @@
- runtime: go1.21
requirements:
# See https://en.wikipedia.org/wiki/MacOS_version_history#Releases
#
# macOS 10.15 (Catalina) per https://go.dev/doc/go1.22#darwin
darwin: "19"
# Per https://go.dev/doc/go1.23#linux
linux: "2.6.32"
# Windows 10's initial release was 10.0.10240.16405, per
# https://learn.microsoft.com/en-us/windows/release-health/release-information
# and Windows 11's initial release was 10.0.22000.194 per
# https://learn.microsoft.com/en-us/windows/release-health/windows11-release-information
#
# Windows 10/Windows Server 2016 per https://go.dev/doc/go1.21#windows
windows: "10.0"
- runtime: go1.22
requirements:
darwin: "19"
linux: "2.6.32"
windows: "10.0"
- runtime: go1.23
requirements:
# macOS 11 (Big Sur) per https://tip.golang.org/doc/go1.23#darwin
darwin: "20"
linux: "2.6.32"
windows: "10.0"