From 50b32f38d4aa704996f710b52116a835a8353ac1 Mon Sep 17 00:00:00 2001 From: Dragos Andriciuc Date: Fri, 6 Mar 2026 12:25:51 +0200 Subject: [PATCH 1/2] PG-2237 - Automate release date for Release Notes This PR tests a CI automation workflow for automated release date generation. The workflow reads `pspgversion` from `variables.yml`, converts it to the corresponding key (18.3.2 to 18_3_2), and updates the date field during merge. This removes the need to manually set the release dates while keeping the current documentation structure unchanged. --- .../workflows/generate-release-metadata.yml | 50 +++++++++++++++++++ docs/release-notes/release-notes-v18.3.2.md | 5 ++ mkdocs.yml | 1 + variables.yml | 3 +- 4 files changed, 58 insertions(+), 1 deletion(-) create mode 100644 .github/workflows/generate-release-metadata.yml create mode 100644 docs/release-notes/release-notes-v18.3.2.md diff --git a/.github/workflows/generate-release-metadata.yml b/.github/workflows/generate-release-metadata.yml new file mode 100644 index 000000000..81895c917 --- /dev/null +++ b/.github/workflows/generate-release-metadata.yml @@ -0,0 +1,50 @@ +name: Release Docs Automation + +on: + pull_request: + paths: + - docs/release-notes/** + - variables.yml + push: + branches: + - '1*' + paths: + - docs/release-notes/** + - variables.yml + +jobs: + build: + name: Update release metadata + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Update release date + run: | + TODAY=$(date +'%Y-%m-%d') + + VERSION=$(grep "pspgversion:" variables.yml | awk '{print $2}' | tr -d "'") + KEY=$(echo $VERSION | tr '.' '_') + + echo "Setting release date for version $VERSION ($KEY)" + + if grep -q "$KEY:" variables.yml; then + sed -i "s/$KEY:.*/$KEY: $TODAY/" variables.yml + else + sed -i "/date:/a\ $KEY: $TODAY" variables.yml + fi + + - name: Show changes + run: git diff + + - name: Commit changes + if: startsWith(github.ref, 'refs/heads/1') + run: | + git config user.name github-actions + git config user.email github-actions@github.com + git add variables.yml + git diff --cached --quiet || git commit -m "Auto-update release date" + git push \ No newline at end of file diff --git a/docs/release-notes/release-notes-v18.3.2.md b/docs/release-notes/release-notes-v18.3.2.md new file mode 100644 index 000000000..e71b5db91 --- /dev/null +++ b/docs/release-notes/release-notes-v18.3.2.md @@ -0,0 +1,5 @@ +# Percona Distribution for PostgreSQL 18.3.2 ({{date.18_3_2}}) + +## Test release + +This release note exists only to test automated release date generation. diff --git a/mkdocs.yml b/mkdocs.yml index d183ea8d7..a8ddf3684 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -73,6 +73,7 @@ nav: - Uninstall: uninstalling.md - Release notes: - "Release notes index": release-notes/release-notes.md + - "18.3.2": release-notes/release-notes-v18.3.2.md - "18.3.1": release-notes/release-notes-v18.3.1.md - "2025": - "18.1.1": release-notes/release-notes-v18.1.1.md diff --git a/variables.yml b/variables.yml index 49f6c5f31..c58322449 100644 --- a/variables.yml +++ b/variables.yml @@ -5,9 +5,10 @@ release: 'release-notes-v18.3.1' dockertag: '18.3' pgsubversion: '18.3' pgversion: '18' -pspgversion: '18.3.1' +pspgversion: '18.3.2' #change version for release note update pgsmversion: '2.3.2' +# Dates are automatically updated by CI on release merge date: 18_3_1: 2026-03-02 18_1_1: 2025-11-28 From ffaaf77dc1056f62d54621eb22dafd628080bf15 Mon Sep 17 00:00:00 2001 From: Dragos Andriciuc Date: Fri, 6 Mar 2026 12:33:11 +0200 Subject: [PATCH 2/2] Update release-notes-v18.3.2.md --- docs/release-notes/release-notes-v18.3.2.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/release-notes-v18.3.2.md b/docs/release-notes/release-notes-v18.3.2.md index e71b5db91..87e308782 100644 --- a/docs/release-notes/release-notes-v18.3.2.md +++ b/docs/release-notes/release-notes-v18.3.2.md @@ -1,5 +1,5 @@ # Percona Distribution for PostgreSQL 18.3.2 ({{date.18_3_2}}) -## Test release +## Test release This release note exists only to test automated release date generation.