Skip to content

Commit b3cf57d

Browse files
authored
Fetch console betas (#82)
1 parent 6c1e1b6 commit b3cf57d

File tree

8 files changed

+38
-18
lines changed

8 files changed

+38
-18
lines changed

extensions/find-related-docs.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ module.exports.register = function ({ config }) {
5454
}
5555

5656
if (uniqueRelatedDocs.length > 0 || uniqueRelatedLabs.length > 0) {
57-
logger.info(`Set related docs and labs attributes for ${labPage.asciidoc.doctitle}`);
57+
logger.debug(`Set related docs and labs attributes for ${labPage.asciidoc.doctitle}`);
5858
}
5959
});
6060
});

extensions/find-related-labs.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ module.exports.register = function ({ config }) {
1919
})
2020
if (!relatedLabs.length) return
2121
docPage.asciidoc.attributes['page-related-labs'] = JSON.stringify(relatedLabs)
22-
logger.info(`Set page-related-labs attribute for ${docPage.asciidoc.doctitle} to ${docPage.asciidoc.attributes['page-related-labs']}`)
22+
logger.debug(`Set page-related-labs attribute for ${docPage.asciidoc.doctitle} to ${docPage.asciidoc.attributes['page-related-labs']}`)
2323
})
2424
})
2525
}

extensions/replace-attributes-in-attachments.js

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,9 +37,12 @@ module.exports.register = function () {
3737
? sanitizeAttributeValue(attributes['latest-redpanda-tag'] || '')
3838
: sanitizeAttributeValue(attributes['full-version'] || ''));
3939

40-
const consoleVersion = useTagAttributes
41-
? sanitizeAttributeValue(attributes['latest-console-tag'] || '')
42-
: sanitizeAttributeValue(attributes['latest-console-version'] || '');
40+
const consoleVersion = isPrerelease
41+
? sanitizeAttributeValue(attributes['console-beta-tag'] || '')
42+
: (useTagAttributes
43+
? sanitizeAttributeValue(attributes['latest-console-tag'] || '')
44+
: sanitizeAttributeValue(attributes['latest-console-version'] || ''));
45+
4346
const redpandaRepo = isPrerelease ? 'redpanda-unstable' : 'redpanda';
4447
const consoleRepo = 'console';
4548

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,35 @@
11
module.exports = async (github, owner, repo) => {
22
const semver = require('semver');
33
try {
4+
// Fetch all the releases from the repository
45
const releases = await github.rest.repos.listReleases({
56
owner,
67
repo,
78
page: 1,
89
per_page: 50
910
});
1011

11-
// Filter tags with valid semver format
12+
// Filter valid semver tags and sort them to find the highest version
1213
const sortedReleases = releases.data
1314
.map(release => release.tag_name)
1415
.filter(tag => semver.valid(tag.replace(/^v/, '')))
1516
.sort((a, b) => semver.rcompare(a.replace(/^v/, ''), b.replace(/^v/, '')));
1617

1718
if (sortedReleases.length > 0) {
18-
// Return the highest version with "v" prefix
19-
return sortedReleases[0];
19+
// Find the highest versions for stable and beta releases
20+
const latestStableReleaseVersion = sortedReleases.find(tag => !tag.includes('-beta'));
21+
const latestBetaReleaseVersion = sortedReleases.find(tag => tag.includes('-beta'));
22+
23+
return {
24+
latestStableRelease: latestStableReleaseVersion || null,
25+
latestBetaRelease: latestBetaReleaseVersion || null
26+
};
2027
} else {
2128
console.log("No valid semver releases found.");
22-
return null;
29+
return { latestStableRelease: null, latestBetaRelease: null };
2330
}
2431
} catch (error) {
25-
console.error(error);
26-
return null;
32+
console.error('Failed to fetch release information:', error);
33+
return { latestStableRelease: null, latestBetaRelease: null };
2734
}
2835
};

extensions/version-fetcher/set-latest-version.js

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -69,14 +69,15 @@ module.exports.register = function ({ config }) {
6969

7070
// Set attributes for console and connect versions
7171
if (latestVersions.console) {
72-
setVersionAndTagAttributes(asciidoc, 'latest-console', latestVersions.console, name, version);
72+
setVersionAndTagAttributes(asciidoc, 'latest-console', latestVersions.console.latestStableRelease, name, version);
7373
}
7474
if (latestVersions.connect) {
7575
setVersionAndTagAttributes(asciidoc, 'latest-connect', latestVersions.connect, name, version);
7676
}
7777
// Special handling for Redpanda RC versions if in beta
7878
if (latestVersions.redpanda?.latestRcRelease?.version) {
7979
setVersionAndTagAttributes(asciidoc, 'redpanda-beta', latestVersions.redpanda.latestRcRelease.version, name, version)
80+
setVersionAndTagAttributes(asciidoc, 'console-beta', latestVersions.console.latestBetaRelease, name, version);
8081
asciidoc.attributes['redpanda-beta-commit'] = latestVersions.redpanda.latestRcRelease.commitHash;
8182
}
8283
});
@@ -91,12 +92,18 @@ module.exports.register = function ({ config }) {
9192
component.latest.asciidoc.attributes['full-version'] = sanitizeVersion(latestVersions.redpanda.latestRedpandaRelease.version);
9293
setVersionAndTagAttributes(component.latest.asciidoc, 'latest-redpanda', latestVersions.redpanda.latestRedpandaRelease.version, component.latest.name, component.latest.version);
9394
component.latest.asciidoc.attributes['latest-release-commit'] = latestVersions.redpanda.latestRedpandaRelease.commitHash;
94-
logger.info(`Updated Redpanda release version to ${latestVersions.redpanda.latestRedpandaRelease.version}`);
9595
}
9696
}
9797
});
9898

9999
console.log(chalk.green('Updated Redpanda documentation versions successfully.'));
100+
logger.info(`Latest Redpanda version: ${latestVersions.redpanda.latestRedpandaRelease.version}`);
101+
if (latestVersions.redpanda.latestRCRelease) logger.info(`Latest Redpanda beta version: ${latestVersions.redpanda.latestRCRelease.version}`);
102+
logger.info(`Latest Connect version: ${latestVersions.connect}`);
103+
logger.info(`Latest Console version: ${latestVersions.console.latestStableRelease}`);
104+
if (latestVersions.console.latestBetaRelease) logger.info(`Latest Console beta version: ${latestVersions.console.latestBetaRelease}`);
105+
logger.info(`Latest Redpanda Helm chart version: ${latestVersions.helmChart}`);
106+
logger.info(`Latest Operator version: ${latestVersions.operator}`);
100107
} catch (error) {
101108
logger.error(`Error updating versions: ${error}`);
102109
}
@@ -110,9 +117,9 @@ module.exports.register = function ({ config }) {
110117
asciidoc.attributes[`${baseName}-tag`] = `${versionData}`;
111118

112119
if (name && version) {
113-
logger.info(`Set ${baseName}-version to ${versionWithoutPrefix} and ${baseName}-tag to ${versionData} in ${name} ${version}`);
120+
logger.debug(`Set ${baseName}-version to ${versionWithoutPrefix} and ${baseName}-tag to ${versionData} in ${name} ${version}`);
114121
} else {
115-
logger.info(`Updated ${baseName}-version to ${versionWithoutPrefix} and ${baseName}-tag to ${versionData}`);
122+
logger.debug(`Updated ${baseName}-version to ${versionWithoutPrefix} and ${baseName}-tag to ${versionData}`);
116123
}
117124
}
118125
}

package-lock.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@redpanda-data/docs-extensions-and-macros",
3-
"version": "3.7.4",
3+
"version": "3.8.0",
44
"description": "Antora extensions and macros developed for Redpanda documentation.",
55
"keywords": [
66
"antora",

preview/extensions-and-macros/modules/ROOT/pages/test.adoc

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,8 +76,11 @@ The `version fetcher` extension gets the latest version of Redpanda and Redpanda
7676
- `\{full-version}`: {full-version}
7777
- `\{latest-redpanda-version}`: {latest-redpanda-version}
7878
- `\{redpanda-beta-version}`: {redpanda-beta-version}
79+
- `\{redpanda-beta-tag}`: {redpanda-beta-tag}
7980
- `\{latest-release-commit}`: {latest-release-commit}
8081
- `\{latest-console-version}`: {latest-console-version}
82+
- `\{console-beta-version}`: {console-beta-version}
83+
- `\{console-beta-tag}`: {console-beta-tag}
8184
- `\{latest-operator-version}`: {latest-operator-version}
8285
- `\{latest-redpanda-helm-chart-version}`: {latest-redpanda-helm-chart-version}
8386

0 commit comments

Comments
 (0)