Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion extensions/find-related-docs.js
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ module.exports.register = function ({ config }) {
}

if (uniqueRelatedDocs.length > 0 || uniqueRelatedLabs.length > 0) {
logger.info(`Set related docs and labs attributes for ${labPage.asciidoc.doctitle}`);
logger.debug(`Set related docs and labs attributes for ${labPage.asciidoc.doctitle}`);
}
});
});
Expand Down
2 changes: 1 addition & 1 deletion extensions/find-related-labs.js
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ module.exports.register = function ({ config }) {
})
if (!relatedLabs.length) return
docPage.asciidoc.attributes['page-related-labs'] = JSON.stringify(relatedLabs)
logger.info(`Set page-related-labs attribute for ${docPage.asciidoc.doctitle} to ${docPage.asciidoc.attributes['page-related-labs']}`)
logger.debug(`Set page-related-labs attribute for ${docPage.asciidoc.doctitle} to ${docPage.asciidoc.attributes['page-related-labs']}`)
})
})
}
Expand Down
9 changes: 6 additions & 3 deletions extensions/replace-attributes-in-attachments.js
Original file line number Diff line number Diff line change
Expand Up @@ -37,9 +37,12 @@ module.exports.register = function () {
? sanitizeAttributeValue(attributes['latest-redpanda-tag'] || '')
: sanitizeAttributeValue(attributes['full-version'] || ''));

const consoleVersion = useTagAttributes
? sanitizeAttributeValue(attributes['latest-console-tag'] || '')
: sanitizeAttributeValue(attributes['latest-console-version'] || '');
const consoleVersion = isPrerelease
? sanitizeAttributeValue(attributes['console-beta-tag'] || '')
: (useTagAttributes
? sanitizeAttributeValue(attributes['latest-console-tag'] || '')
: sanitizeAttributeValue(attributes['latest-console-version'] || ''));

const redpandaRepo = isPrerelease ? 'redpanda-unstable' : 'redpanda';
const consoleRepo = 'console';

Expand Down
19 changes: 13 additions & 6 deletions extensions/version-fetcher/get-latest-console-version.js
Original file line number Diff line number Diff line change
@@ -1,28 +1,35 @@
module.exports = async (github, owner, repo) => {
const semver = require('semver');
try {
// Fetch all the releases from the repository
const releases = await github.rest.repos.listReleases({
owner,
repo,
page: 1,
per_page: 50
});

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

if (sortedReleases.length > 0) {
// Return the highest version with "v" prefix
return sortedReleases[0];
// Find the highest versions for stable and beta releases
const latestStableReleaseVersion = sortedReleases.find(tag => !tag.includes('-beta'));
const latestBetaReleaseVersion = sortedReleases.find(tag => tag.includes('-beta'));

return {
latestStableRelease: latestStableReleaseVersion || null,
latestBetaRelease: latestBetaReleaseVersion || null
};
} else {
console.log("No valid semver releases found.");
return null;
return { latestStableRelease: null, latestBetaRelease: null };
}
} catch (error) {
console.error(error);
return null;
console.error('Failed to fetch release information:', error);
return { latestStableRelease: null, latestBetaRelease: null };
}
};
15 changes: 11 additions & 4 deletions extensions/version-fetcher/set-latest-version.js
Original file line number Diff line number Diff line change
Expand Up @@ -69,14 +69,15 @@ module.exports.register = function ({ config }) {

// Set attributes for console and connect versions
if (latestVersions.console) {
setVersionAndTagAttributes(asciidoc, 'latest-console', latestVersions.console, name, version);
setVersionAndTagAttributes(asciidoc, 'latest-console', latestVersions.console.latestStableRelease, name, version);
}
if (latestVersions.connect) {
setVersionAndTagAttributes(asciidoc, 'latest-connect', latestVersions.connect, name, version);
}
// Special handling for Redpanda RC versions if in beta
if (latestVersions.redpanda?.latestRcRelease?.version) {
setVersionAndTagAttributes(asciidoc, 'redpanda-beta', latestVersions.redpanda.latestRcRelease.version, name, version)
setVersionAndTagAttributes(asciidoc, 'console-beta', latestVersions.console.latestBetaRelease, name, version);
asciidoc.attributes['redpanda-beta-commit'] = latestVersions.redpanda.latestRcRelease.commitHash;
}
});
Expand All @@ -91,12 +92,18 @@ module.exports.register = function ({ config }) {
component.latest.asciidoc.attributes['full-version'] = sanitizeVersion(latestVersions.redpanda.latestRedpandaRelease.version);
setVersionAndTagAttributes(component.latest.asciidoc, 'latest-redpanda', latestVersions.redpanda.latestRedpandaRelease.version, component.latest.name, component.latest.version);
component.latest.asciidoc.attributes['latest-release-commit'] = latestVersions.redpanda.latestRedpandaRelease.commitHash;
logger.info(`Updated Redpanda release version to ${latestVersions.redpanda.latestRedpandaRelease.version}`);
}
}
});

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

if (name && version) {
logger.info(`Set ${baseName}-version to ${versionWithoutPrefix} and ${baseName}-tag to ${versionData} in ${name} ${version}`);
logger.debug(`Set ${baseName}-version to ${versionWithoutPrefix} and ${baseName}-tag to ${versionData} in ${name} ${version}`);
} else {
logger.info(`Updated ${baseName}-version to ${versionWithoutPrefix} and ${baseName}-tag to ${versionData}`);
logger.debug(`Updated ${baseName}-version to ${versionWithoutPrefix} and ${baseName}-tag to ${versionData}`);
}
}
}
Expand Down
4 changes: 2 additions & 2 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@redpanda-data/docs-extensions-and-macros",
"version": "3.7.4",
"version": "3.8.0",
"description": "Antora extensions and macros developed for Redpanda documentation.",
"keywords": [
"antora",
Expand Down
3 changes: 3 additions & 0 deletions preview/extensions-and-macros/modules/ROOT/pages/test.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -76,8 +76,11 @@ The `version fetcher` extension gets the latest version of Redpanda and Redpanda
- `\{full-version}`: {full-version}
- `\{latest-redpanda-version}`: {latest-redpanda-version}
- `\{redpanda-beta-version}`: {redpanda-beta-version}
- `\{redpanda-beta-tag}`: {redpanda-beta-tag}
- `\{latest-release-commit}`: {latest-release-commit}
- `\{latest-console-version}`: {latest-console-version}
- `\{console-beta-version}`: {console-beta-version}
- `\{console-beta-tag}`: {console-beta-tag}
- `\{latest-operator-version}`: {latest-operator-version}
- `\{latest-redpanda-helm-chart-version}`: {latest-redpanda-helm-chart-version}

Expand Down