From 59afc091e61b447fa54c40be5f1455a44e69a97e Mon Sep 17 00:00:00 2001 From: Victor Plakyda Date: Fri, 7 Nov 2025 15:14:13 +0200 Subject: [PATCH 1/5] feat: add latest app version to release index data --- .github/scripts/release-index/build-releases.js | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/.github/scripts/release-index/build-releases.js b/.github/scripts/release-index/build-releases.js index 0fe2912d..42651e61 100644 --- a/.github/scripts/release-index/build-releases.js +++ b/.github/scripts/release-index/build-releases.js @@ -210,6 +210,7 @@ async function buildChannelData(channelReleases, channelName) { return { releases: topReleases, latestChartVersion: sorted[0]?.version || null, + latestAppVersion: sorted[0]?.appVersion || null, latestWithSecurityFixes, }; } @@ -244,11 +245,13 @@ async function buildIndex() { releases: stable.releases, latestChartVersion: stable.latestChartVersion, latestWithSecurityFixes: stable.latestWithSecurityFixes, + latestAppVersion: stable.latestAppVersion, }, latest: { releases: latest.releases, latestChartVersion: latest.latestChartVersion, latestWithSecurityFixes: latest.latestWithSecurityFixes, + latestAppVersion: latest.latestAppVersion, }, }, stats: { @@ -274,6 +277,11 @@ async function buildIndex() { console.log( ` Latest: ${index.channels.stable.latestChartVersion || "none"}` ); + console.log( + ` Latest app version: ${ + index.channels.stable.latestAppVersion || "none" + }` + ); console.log( ` Latest secure: ${ index.channels.stable.latestWithSecurityFixes || "none" @@ -283,6 +291,11 @@ async function buildIndex() { console.log( ` Latest: ${index.channels.latest.latestChartVersion || "none"}` ); + console.log( + ` Latest app version: ${ + index.channels.latest.latestAppVersion || "none" + }` + ); console.log( ` Latest secure: ${ index.channels.latest.latestWithSecurityFixes || "none" From f6d68b044ea7c64383c18b7e7ca0c76ae7d4768f Mon Sep 17 00:00:00 2001 From: Victor Plakyda Date: Fri, 7 Nov 2025 15:18:49 +0200 Subject: [PATCH 2/5] chore: normalize workflow name --- .github/workflows/release-index.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release-index.yaml b/.github/workflows/release-index.yaml index b3ca8e6f..94c361ea 100644 --- a/.github/workflows/release-index.yaml +++ b/.github/workflows/release-index.yaml @@ -1,4 +1,4 @@ -name: Update Release Index +name: update-release-index on: release: From 04bb4866f1c27f6a0acf31354019ac29bb4e68fe Mon Sep 17 00:00:00 2001 From: Victor Plakyda Date: Fri, 7 Nov 2025 17:37:32 +0200 Subject: [PATCH 3/5] feat: add latest URL to release index data --- .github/scripts/release-index/build-releases.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/scripts/release-index/build-releases.js b/.github/scripts/release-index/build-releases.js index 42651e61..1d2b00e4 100644 --- a/.github/scripts/release-index/build-releases.js +++ b/.github/scripts/release-index/build-releases.js @@ -212,6 +212,7 @@ async function buildChannelData(channelReleases, channelName) { latestChartVersion: sorted[0]?.version || null, latestAppVersion: sorted[0]?.appVersion || null, latestWithSecurityFixes, + latestUrl: sorted[0]?.url || null, }; } @@ -246,12 +247,14 @@ async function buildIndex() { latestChartVersion: stable.latestChartVersion, latestWithSecurityFixes: stable.latestWithSecurityFixes, latestAppVersion: stable.latestAppVersion, + latestUrl: stable.latestUrl, }, latest: { releases: latest.releases, latestChartVersion: latest.latestChartVersion, latestWithSecurityFixes: latest.latestWithSecurityFixes, latestAppVersion: latest.latestAppVersion, + latestUrl: latest.latestUrl, }, }, stats: { From df55125a35957665222e228d28c0058ba88a27d3 Mon Sep 17 00:00:00 2001 From: Victor Plakyda Date: Fri, 7 Nov 2025 18:17:00 +0200 Subject: [PATCH 4/5] refactor: update release index to include latest release object --- .../scripts/release-index/build-releases.js | 27 ++-- releases/releases.json | 146 ++++++++++++++++++ 2 files changed, 157 insertions(+), 16 deletions(-) create mode 100644 releases/releases.json diff --git a/.github/scripts/release-index/build-releases.js b/.github/scripts/release-index/build-releases.js index 1d2b00e4..5d249c8b 100644 --- a/.github/scripts/release-index/build-releases.js +++ b/.github/scripts/release-index/build-releases.js @@ -196,7 +196,8 @@ async function buildChannelData(channelReleases, channelName) { release.appVersion = await getAppVersionFromChart(release.version); } - const latestVersion = sorted[0]?.version; + const latestRelease = sorted[0] || null; + const latestVersion = latestRelease?.version; const latestSecureIndex = latestWithSecurityFixes ? sorted.findIndex((r) => r.version === latestWithSecurityFixes) : -1; @@ -209,10 +210,8 @@ async function buildChannelData(channelReleases, channelName) { return { releases: topReleases, - latestChartVersion: sorted[0]?.version || null, - latestAppVersion: sorted[0]?.appVersion || null, latestWithSecurityFixes, - latestUrl: sorted[0]?.url || null, + latestRelease, }; } @@ -244,17 +243,13 @@ async function buildIndex() { channels: { stable: { releases: stable.releases, - latestChartVersion: stable.latestChartVersion, + latestRelease: stable.latestRelease, latestWithSecurityFixes: stable.latestWithSecurityFixes, - latestAppVersion: stable.latestAppVersion, - latestUrl: stable.latestUrl, }, latest: { releases: latest.releases, - latestChartVersion: latest.latestChartVersion, + latestRelease: latest.latestRelease, latestWithSecurityFixes: latest.latestWithSecurityFixes, - latestAppVersion: latest.latestAppVersion, - latestUrl: latest.latestUrl, }, }, stats: { @@ -278,11 +273,11 @@ async function buildIndex() { console.log(` Total releases: ${index.stats.totalReleases}`); console.log(`\n 🟢 Stable Channel:`); console.log( - ` Latest: ${index.channels.stable.latestChartVersion || "none"}` + ` Latest chart: ${index.channels.stable.latestRelease?.version || "none"}` ); console.log( - ` Latest app version: ${ - index.channels.stable.latestAppVersion || "none" + ` Latest app: ${ + index.channels.stable.latestRelease?.appVersion || "none" }` ); console.log( @@ -292,11 +287,11 @@ async function buildIndex() { ); console.log(`\n 🔵 Latest Channel:`); console.log( - ` Latest: ${index.channels.latest.latestChartVersion || "none"}` + ` Latest chart: ${index.channels.latest.latestRelease?.version || "none"}` ); console.log( - ` Latest app version: ${ - index.channels.latest.latestAppVersion || "none" + ` Latest app: ${ + index.channels.latest.latestRelease?.appVersion || "none" }` ); console.log( diff --git a/releases/releases.json b/releases/releases.json new file mode 100644 index 00000000..88a4261c --- /dev/null +++ b/releases/releases.json @@ -0,0 +1,146 @@ +{ + "generatedAt": "2025-11-07T15:36:10.672Z", + "repository": "codefresh-io/gitops-runtime-helm", + "channels": { + "stable": { + "releases": [ + { + "version": "0.25.1", + "normalized": "0.25.1", + "channel": "stable", + "hasSecurityFixes": false, + "publishedAt": "2025-11-06T10:31:16Z", + "url": "https://github.com/codefresh-io/gitops-runtime-helm/releases/tag/0.25.1", + "createdAt": "2025-11-06T10:28:31Z", + "appVersion": "0.1.77", + "upgradeAvailable": false, + "hasSecurityVulnerabilities": false + }, + { + "version": "0.25.0", + "normalized": "0.25.0", + "channel": "stable", + "hasSecurityFixes": false, + "publishedAt": "2025-11-03T13:23:47Z", + "url": "https://github.com/codefresh-io/gitops-runtime-helm/releases/tag/0.25.0", + "createdAt": "2025-11-03T12:48:01Z", + "appVersion": "0.1.76", + "upgradeAvailable": true, + "hasSecurityVulnerabilities": false + }, + { + "version": "0.24.7", + "normalized": "0.24.7", + "channel": "stable", + "hasSecurityFixes": false, + "publishedAt": "2025-10-30T07:06:35Z", + "url": "https://github.com/codefresh-io/gitops-runtime-helm/releases/tag/0.24.7", + "createdAt": "2025-10-30T07:03:41Z", + "appVersion": "0.1.75", + "upgradeAvailable": true, + "hasSecurityVulnerabilities": false + }, + { + "version": "0.24.6", + "normalized": "0.24.6", + "channel": "stable", + "hasSecurityFixes": false, + "publishedAt": "2025-10-29T09:42:35Z", + "url": "https://github.com/codefresh-io/gitops-runtime-helm/releases/tag/0.24.6", + "createdAt": "2025-10-29T09:40:02Z", + "appVersion": "0.1.75", + "upgradeAvailable": true, + "hasSecurityVulnerabilities": false + }, + { + "version": "0.24.5", + "normalized": "0.24.5", + "channel": "stable", + "hasSecurityFixes": false, + "publishedAt": "2025-10-27T16:57:36Z", + "url": "https://github.com/codefresh-io/gitops-runtime-helm/releases/tag/0.24.5", + "createdAt": "2025-10-27T16:54:58Z", + "appVersion": "0.1.75", + "upgradeAvailable": true, + "hasSecurityVulnerabilities": false + }, + { + "version": "0.24.4", + "normalized": "0.24.4", + "channel": "stable", + "hasSecurityFixes": false, + "publishedAt": "2025-10-09T08:01:52Z", + "url": "https://github.com/codefresh-io/gitops-runtime-helm/releases/tag/0.24.4", + "createdAt": "2025-10-09T07:59:20Z", + "appVersion": "0.1.75", + "upgradeAvailable": true, + "hasSecurityVulnerabilities": false + }, + { + "version": "0.24.3", + "normalized": "0.24.3", + "channel": "stable", + "hasSecurityFixes": false, + "publishedAt": "2025-10-01T14:04:55Z", + "url": "https://github.com/codefresh-io/gitops-runtime-helm/releases/tag/0.24.3", + "createdAt": "2025-10-01T14:02:05Z", + "appVersion": "0.1.75", + "upgradeAvailable": true, + "hasSecurityVulnerabilities": false + }, + { + "version": "0.24.2", + "normalized": "0.24.2", + "channel": "stable", + "hasSecurityFixes": false, + "publishedAt": "2025-09-22T11:42:14Z", + "url": "https://github.com/codefresh-io/gitops-runtime-helm/releases/tag/0.24.2", + "createdAt": "2025-09-22T11:39:54Z", + "appVersion": "0.1.75", + "upgradeAvailable": true, + "hasSecurityVulnerabilities": false + }, + { + "version": "0.24.1", + "normalized": "0.24.1", + "channel": "stable", + "hasSecurityFixes": false, + "publishedAt": "2025-09-10T16:01:18Z", + "url": "https://github.com/codefresh-io/gitops-runtime-helm/releases/tag/0.24.1", + "createdAt": "2025-09-10T15:58:26Z", + "appVersion": "0.1.75", + "upgradeAvailable": true, + "hasSecurityVulnerabilities": false + }, + { + "version": "0.24.0", + "normalized": "0.24.0", + "channel": "stable", + "hasSecurityFixes": false, + "publishedAt": "2025-09-08T14:01:03Z", + "url": "https://github.com/codefresh-io/gitops-runtime-helm/releases/tag/0.24.0", + "createdAt": "2025-09-08T13:59:05Z", + "appVersion": "0.1.75", + "upgradeAvailable": true, + "hasSecurityVulnerabilities": false + } + ], + "latestChartVersion": "0.25.1", + "latestWithSecurityFixes": null, + "latestAppVersion": "0.1.77", + "latestUrl": "https://github.com/codefresh-io/gitops-runtime-helm/releases/tag/0.25.1" + }, + "latest": { + "releases": [], + "latestChartVersion": null, + "latestWithSecurityFixes": null, + "latestAppVersion": null, + "latestUrl": null + } + }, + "stats": { + "totalReleases": 128, + "stableSecure": null, + "latestSecure": null + } +} \ No newline at end of file From afa2be5ce5a7f9169cf309ba54667db273406fa1 Mon Sep 17 00:00:00 2001 From: Victor Plakyda Date: Tue, 11 Nov 2025 12:42:17 +0200 Subject: [PATCH 5/5] chore: remove releases.json file --- releases/releases.json | 146 ----------------------------------------- 1 file changed, 146 deletions(-) delete mode 100644 releases/releases.json diff --git a/releases/releases.json b/releases/releases.json deleted file mode 100644 index 88a4261c..00000000 --- a/releases/releases.json +++ /dev/null @@ -1,146 +0,0 @@ -{ - "generatedAt": "2025-11-07T15:36:10.672Z", - "repository": "codefresh-io/gitops-runtime-helm", - "channels": { - "stable": { - "releases": [ - { - "version": "0.25.1", - "normalized": "0.25.1", - "channel": "stable", - "hasSecurityFixes": false, - "publishedAt": "2025-11-06T10:31:16Z", - "url": "https://github.com/codefresh-io/gitops-runtime-helm/releases/tag/0.25.1", - "createdAt": "2025-11-06T10:28:31Z", - "appVersion": "0.1.77", - "upgradeAvailable": false, - "hasSecurityVulnerabilities": false - }, - { - "version": "0.25.0", - "normalized": "0.25.0", - "channel": "stable", - "hasSecurityFixes": false, - "publishedAt": "2025-11-03T13:23:47Z", - "url": "https://github.com/codefresh-io/gitops-runtime-helm/releases/tag/0.25.0", - "createdAt": "2025-11-03T12:48:01Z", - "appVersion": "0.1.76", - "upgradeAvailable": true, - "hasSecurityVulnerabilities": false - }, - { - "version": "0.24.7", - "normalized": "0.24.7", - "channel": "stable", - "hasSecurityFixes": false, - "publishedAt": "2025-10-30T07:06:35Z", - "url": "https://github.com/codefresh-io/gitops-runtime-helm/releases/tag/0.24.7", - "createdAt": "2025-10-30T07:03:41Z", - "appVersion": "0.1.75", - "upgradeAvailable": true, - "hasSecurityVulnerabilities": false - }, - { - "version": "0.24.6", - "normalized": "0.24.6", - "channel": "stable", - "hasSecurityFixes": false, - "publishedAt": "2025-10-29T09:42:35Z", - "url": "https://github.com/codefresh-io/gitops-runtime-helm/releases/tag/0.24.6", - "createdAt": "2025-10-29T09:40:02Z", - "appVersion": "0.1.75", - "upgradeAvailable": true, - "hasSecurityVulnerabilities": false - }, - { - "version": "0.24.5", - "normalized": "0.24.5", - "channel": "stable", - "hasSecurityFixes": false, - "publishedAt": "2025-10-27T16:57:36Z", - "url": "https://github.com/codefresh-io/gitops-runtime-helm/releases/tag/0.24.5", - "createdAt": "2025-10-27T16:54:58Z", - "appVersion": "0.1.75", - "upgradeAvailable": true, - "hasSecurityVulnerabilities": false - }, - { - "version": "0.24.4", - "normalized": "0.24.4", - "channel": "stable", - "hasSecurityFixes": false, - "publishedAt": "2025-10-09T08:01:52Z", - "url": "https://github.com/codefresh-io/gitops-runtime-helm/releases/tag/0.24.4", - "createdAt": "2025-10-09T07:59:20Z", - "appVersion": "0.1.75", - "upgradeAvailable": true, - "hasSecurityVulnerabilities": false - }, - { - "version": "0.24.3", - "normalized": "0.24.3", - "channel": "stable", - "hasSecurityFixes": false, - "publishedAt": "2025-10-01T14:04:55Z", - "url": "https://github.com/codefresh-io/gitops-runtime-helm/releases/tag/0.24.3", - "createdAt": "2025-10-01T14:02:05Z", - "appVersion": "0.1.75", - "upgradeAvailable": true, - "hasSecurityVulnerabilities": false - }, - { - "version": "0.24.2", - "normalized": "0.24.2", - "channel": "stable", - "hasSecurityFixes": false, - "publishedAt": "2025-09-22T11:42:14Z", - "url": "https://github.com/codefresh-io/gitops-runtime-helm/releases/tag/0.24.2", - "createdAt": "2025-09-22T11:39:54Z", - "appVersion": "0.1.75", - "upgradeAvailable": true, - "hasSecurityVulnerabilities": false - }, - { - "version": "0.24.1", - "normalized": "0.24.1", - "channel": "stable", - "hasSecurityFixes": false, - "publishedAt": "2025-09-10T16:01:18Z", - "url": "https://github.com/codefresh-io/gitops-runtime-helm/releases/tag/0.24.1", - "createdAt": "2025-09-10T15:58:26Z", - "appVersion": "0.1.75", - "upgradeAvailable": true, - "hasSecurityVulnerabilities": false - }, - { - "version": "0.24.0", - "normalized": "0.24.0", - "channel": "stable", - "hasSecurityFixes": false, - "publishedAt": "2025-09-08T14:01:03Z", - "url": "https://github.com/codefresh-io/gitops-runtime-helm/releases/tag/0.24.0", - "createdAt": "2025-09-08T13:59:05Z", - "appVersion": "0.1.75", - "upgradeAvailable": true, - "hasSecurityVulnerabilities": false - } - ], - "latestChartVersion": "0.25.1", - "latestWithSecurityFixes": null, - "latestAppVersion": "0.1.77", - "latestUrl": "https://github.com/codefresh-io/gitops-runtime-helm/releases/tag/0.25.1" - }, - "latest": { - "releases": [], - "latestChartVersion": null, - "latestWithSecurityFixes": null, - "latestAppVersion": null, - "latestUrl": null - } - }, - "stats": { - "totalReleases": 128, - "stableSecure": null, - "latestSecure": null - } -} \ No newline at end of file