case 'jammy':
matchStrs = [
~/^refs\/tags\/(Ubuntu-5\.15\.0-\d{1,3}?\.[\d]+)$/,
+ ~/^refs\/tags\/(Ubuntu-hwe-6\.2-6\.2\.0-.*_22\.04\.\d+)$/,
+ ~/^refs\/tags\/(Ubuntu-hwe-6\.5-6\.5\.0-.*_22\.04\.\d+)$/,
]
break
matchStrs = [
~/^refs\/tags\/(Ubuntu-5\.4\.0-\d{1,3}?\.[\d]+)$/,
~/^refs\/tags\/(Ubuntu-hwe-5\.13-5\.13\.0-.*_20\.04\.\d+)$/,
+ ~/^refs\/tags\/(Ubuntu-hwe-5\.15-5\.15\.0-.*_20\.04\.\d+)$/,
]
break
- case 'bionic':
+ case 'noble':
matchStrs = [
- ~/^refs\/tags\/(Ubuntu-4\.15\.0-\d{1,3}?\.[\d]+)$/,
- ~/^refs\/tags\/(Ubuntu-hwe-5\.4-5\.4\.0-.*_18\.04\.\d+)$/,
- ]
- break
-
- case 'xenial':
- matchStrs = [
- ~/^refs\/tags\/(Ubuntu-4\.4\.0-\d{1,3}?\.[\d]+)$/,
- ~/^refs\/tags\/(Ubuntu-hwe-4\.15\.0-.*_16\.04\.\d+)$/,
+ ~/^refs\/tags\/(Ubuntu-6\.8\.0-\d{1,3}?\.[\d]+)$/,
]
break
}
break
- case 'lts':
+ case 'lts-head':
// Keep only the head of each LTS branch and the latest non-RC tag
println('Filter kernel versions to keep only the latest point release of each lts branch and the current stable.')
- def lts_44 = kversionFactory.factory("v4.4")
- def lts_49 = kversionFactory.factory("v4.9")
- def lts_414 = kversionFactory.factory("v4.14")
- def lts_419 = kversionFactory.factory("v4.19")
- def lts_54 = kversionFactory.factory("v5.4")
+ def lts_kversions = []
+ // Old LTS entries are kept so that "lts-head" is still meaningful in kernel
+ // version ranges that are supported by lttng-modules but no longer supported
+ // upstream, eg. lttng-modules stable-2.13 supports >= 3.0
+ lts_kversions.add(kversionFactory.factory("v3.0")) // LTS until October 2013
+ lts_kversions.add(kversionFactory.factory("v3.2")) // LTS until May 2018
+ lts_kversions.add(kversionFactory.factory("v3.4")) // LTS until October 2016
+ lts_kversions.add(kversionFactory.factory("v3.10")) // LTS until November 2017
+ lts_kversions.add(kversionFactory.factory("v3.12")) // LTS until May 2017
+ lts_kversions.add(kversionFactory.factory("v3.14")) // LTS until August 2016
+ lts_kversions.add(kversionFactory.factory("v3.16")) // LTS until October 2014
+ lts_kversions.add(kversionFactory.factory("v3.18")) // LTS until January 2017
+ lts_kversions.add(kversionFactory.factory("v4.1")) // LTS until May 2018
+ lts_kversions.add(kversionFactory.factory("v4.4")) // SLTS until 2026
+ lts_kversions.add(kversionFactory.factory("v4.9")) // LTS until January 2023
+ lts_kversions.add(kversionFactory.factory("v4.14")) // LTS until January 2024
+ lts_kversions.add(kversionFactory.factory("v4.19")) // LTS until December 2024
+ lts_kversions.add(kversionFactory.factory("v5.4")) // LTS until December 2025
+ lts_kversions.add(kversionFactory.factory("v5.10")) // LTS until December 2026
+ lts_kversions.add(kversionFactory.factory("v5.15")) // LTS until December 2026
+ lts_kversions.add(kversionFactory.factory("v6.1")) // LTS until December 2026
+ lts_kversions.add(kversionFactory.factory("v6.6")) // LTS until December 2026
// First filter the head of each branch
for (i = 0; i < kversions.size(); i++) {
}
// Prune non-LTS versions
- if (!(curr.isSameStable(lts_44) || curr.isSameStable(lts_49) || curr.isSameStable(lts_414) || curr.isSameStable(lts_419) || curr.isSameStable(lts_54))) {
+ def keep = false
+ for (j = 0; j < lts_kversions.size(); j++) {
+ if (curr.isSameStable(lts_kversions[j])) {
+ keep = true
+ break
+ }
+ }
+
+ if (!keep) {
kversions.remove(i)
i--
}