Fix missing Flux/Influxdb versions (#5243)

* fix missing influxdb versions, workaround sorting bug, closes #5239

* removed oss version filter from flux version script
pull/5238/head
Scott Anderson 2023-11-20 11:28:35 -07:00 committed by GitHub
parent e1110fb42a
commit 713d475892
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 84 additions and 34 deletions

View File

@ -5,22 +5,24 @@
# build/deploy process.
flux:
latest: 0.194.3
latest: 0.194.4
cloud:
current: 0.194.3
oss:
'1.7': 0.50.2
'1.8': 0.65.1
'2.0': 0.131.0
'2.1': 0.139.0
'2.2': 0.162.0
'2.3': 0.171.0
'2.4': 0.179.0
'2.5': 0.188.1
'2.7': 0.194.4
'2.6': 0.191.0
'2.7': 0.193.0
nightly: 0.194.3
'2.5': 0.188.1
'2.4': 0.179.0
'2.3': 0.171.0
'2.2': 0.162.0
'2.1': 0.139.0
'2.0': 0.131.0
'1.8': 0.65.1
'1.7': 0.50.2
nightly: 0.194.4
enterprise:
'1.11': 0.194.3
'1.10': 0.188.0
'1.9': 0.161.0
'1.8': 0.65.1
'1.7': 0.50.2

View File

@ -70,13 +70,27 @@ function addVersion(versionObj, influxdbVer, fluxVer) {
versionObj[influxdbVer] = fluxVer
}
// Compare semantic minor versions
function isSemanticNewer(semverX, semverY) {
xMajor = parseInt(semverX.split(".")[0])
xMinor = parseInt(semverX.split(".")[1])
yMajor = parseInt(semverY.split(".")[0])
yMinor = parseInt(semverY.split(".")[1])
if (xMajor > yMajor) {return true}
else if (xMajor == yMajor) {
if (xMinor >= yMinor) {return true}
else {return false}
} else {return false}
}
// Load product data from the product data file
const productData = yaml.load(fs.readFileSync(path.resolve(__dirname,'../data/products.yml'), 'utf8'))
// Update InfluxDB version arrays by removing 'v' from each version and filtering
// out InfluxDB versions that don't have a Flux dependency in their go.mod
const ossVersionArr = productData.influxdb.minor_versions.map((element, index) => {return element.replace('v', '')}).filter(element => parseFloat(element) >= 1.7).reverse();
const enterpriseVersionArr = productData.enterprise_influxdb.minor_versions.map((element, index) => {return element.replace('v', '')}).filter(element => parseFloat(element) >= 1.9).reverse();
// Update InfluxDB version arrays by removing 'v' from each version
// Filter out InfluxDB Enterprise versions that don't have a Flux dependency in their go.mod
const ossVersionArr = productData.influxdb.minor_versions.map((element) => {return element.replace('v', '')});
const enterpriseVersionArr = productData.enterprise_influxdb.minor_versions.map((element) => {return element.replace('v', '')}).filter(version => isSemanticNewer(version, '1.9'));
// Instantiate base Flux version variables
var ossVersions = {};
@ -89,7 +103,7 @@ var fluxVersions = {};
await getAllFluxVersions(enterpriseVersionArr, 'enterprise', enterpriseVersions);
// Manually add versions that aren't included in the original versions arrays
await addVersion(ossVersions, 'nightly', await getFluxVersion('master'));
await addVersion(ossVersions, 'nightly', await getFluxVersion('2.7'));
await addVersion(enterpriseVersions, '1.8', await getFluxVersion('1.8'));
await addVersion(enterpriseVersions, '1.7', await getFluxVersion('1.7'));

View File

@ -60,20 +60,41 @@
<h4>InfluxDB Enterprise</h4>
<div class="version-list">
<!-- Loop that only lists versions with 1-digit minor version -->
{{ range $key, $value := $enterprise }}
{{ $versionSemVer := split $value "." }}
{{ $supported := cond (ge (index $versionSemVer 0) (index $introducedSemVer 0)) (cond (ge (index $versionSemVer 1) (index $introducedSemVer 1)) (cond (ge (index $versionSemVer 2) (index $introducedSemVer 2)) true false) false) false }}
{{ $deprecated := and (isset $.Page.Params "deprecated") (cond (ge (index $versionSemVer 0) (index $deprecatedSemVer 0)) (cond (ge (index $versionSemVer 1) (index $deprecatedSemVer 1)) (cond (ge (index $versionSemVer 2) (index $deprecatedSemVer 2)) true false) false) false) }}
{{ $excluded := gt (len (findRE (string $excludePatternEnterprise) $key)) 0 }}
<div class="version-row">
<div class="version-col"><p>InfluxDB Enterprise {{ $key }}</p></div>
<div class="version-col"><p>
{{ if $excluded }}
{{ else if $deprecated }}<span class="deprecated"></span>
{{ else if $supported }}<span class="cf-icon Checkmark_New{{ if $sameAsLatest }} pending{{ end }} supported"></span>
{{ end }}
</div>
</div>
{{ $versionSemVer := split $value "." }}
{{ $supported := cond (ge (index $versionSemVer 0) (index $introducedSemVer 0)) (cond (ge (index $versionSemVer 1) (index $introducedSemVer 1)) (cond (ge (index $versionSemVer 2) (index $introducedSemVer 2)) true false) false) false }}
{{ $deprecated := and (isset $.Page.Params "deprecated") (cond (ge (index $versionSemVer 0) (index $deprecatedSemVer 0)) (cond (ge (index $versionSemVer 1) (index $deprecatedSemVer 1)) (cond (ge (index $versionSemVer 2) (index $deprecatedSemVer 2)) true false) false) false) }}
{{ $excluded := gt (len (findRE (string $excludePatternEnterprise) $key)) 0 }}
{{ if le (len $key) 3 }}
<div class="version-row">
<div class="version-col"><p>InfluxDB Enterprise {{ $key }}</p></div>
<div class="version-col"><p>
{{ if $excluded }}
{{ else if $deprecated }}<span class="deprecated"></span>
{{ else if $supported }}<span class="cf-icon Checkmark_New{{ if $sameAsLatest }} pending{{ end }} supported"></span>
{{ end }}
</div>
</div>
{{ end }}
{{ end }}
<!-- Loop that only lists versions with 2+-digit minor version -->
{{ range $key, $value := $enterprise }}
{{ $versionSemVer := split $value "." }}
{{ $supported := cond (ge (index $versionSemVer 0) (index $introducedSemVer 0)) (cond (ge (index $versionSemVer 1) (index $introducedSemVer 1)) (cond (ge (index $versionSemVer 2) (index $introducedSemVer 2)) true false) false) false }}
{{ $deprecated := and (isset $.Page.Params "deprecated") (cond (ge (index $versionSemVer 0) (index $deprecatedSemVer 0)) (cond (ge (index $versionSemVer 1) (index $deprecatedSemVer 1)) (cond (ge (index $versionSemVer 2) (index $deprecatedSemVer 2)) true false) false) false) }}
{{ $excluded := gt (len (findRE (string $excludePatternEnterprise) $key)) 0 }}
{{ if gt (len $key) 3 }}
<div class="version-row">
<div class="version-col"><p>InfluxDB Enterprise {{ $key }}</p></div>
<div class="version-col"><p>
{{ if $excluded }}
{{ else if $deprecated }}<span class="deprecated"></span>
{{ else if $supported }}<span class="cf-icon Checkmark_New{{ if $sameAsLatest }} pending{{ end }} supported"></span>
{{ end }}
</div>
</div>
{{ end }}
{{ end }}
</div>

View File

@ -47,12 +47,25 @@
</tr>
</thead>
<tbody>
<!-- Fix out-of-order .10+ minor versions -->
{{ range $key, $value := $enterprise }}
<tr>
<td>InfluxDB Enterprise {{ $key }}</td>
<td style="text-align: right;">{{ $value }}</td>
</div>
</tr>
{{ if le (len $key) 3}}
<tr>
<td>InfluxDB Enterprise {{ $key }}</td>
<td style="text-align: right;">{{ $value }}</td>
</div>
</tr>
{{ end }}
{{ end }}
<!-- list minor versions less without two digits -->
{{ range $key, $value := $enterprise }}
{{ if gt (len $key) 3}}
<tr>
<td>InfluxDB Enterprise {{ $key }}</td>
<td style="text-align: right;">{{ $value }}</td>
</div>
</tr>
{{ end }}
{{ end }}
</tbody>
</table>