Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork221
feat: add branch-based versioning for PR AMI builds#1910
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
Open
jfroche wants to merge2 commits intodevelopChoose a base branch fromfeat/pull-request-image-version-v2
base:develop
Could not load branches
Branch not found:{{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline, and old review comments may become outdated.
Uh oh!
There was an error while loading.Please reload this page.
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.Learn more about bidirectional Unicode characters
hunleyd requested changesNov 12, 2025
Uh oh!
There was an error while loading.Please reload this page.
* feat: add branch-based versioning for PR AMI buildsManually create unique Postgres version names in branch often leads toversion conflicts with the base branch versions. These conflicts forcedevelopers to deal with manual conflict resolution and unnecessaryrebuilds.To address this, this change implement automatic branch-based versioningfor AMI builds triggered via workflow_dispatch on non-develop andnon-release branches. The branch name is sanitized and appended to thePostgres version string.Example: Branch 'multi-version-ext/pg-partman' produces postgres version'multi-version-ext-pg-partman'* feat: add notice message for published AMI versionDisplay the published postgres AMI version using GitHub Actions `::notice` annotation.* feat: run actionlint on GitHub Actions workflowsStarting to lint GitHub Actions workflows with actionlint.* fix: generate a unique AMI versionGitHub run_id is appended to the version suffix to ensure uniqueness.It also enables to track the AMI back to the specific workflow run thatcreated it using url like:https://github.com/supabase/postgres/actions/runs/<run_id>
be51860 to4b0d2d2Compare…d bin flake version workflowsOnce the AMI release workflow completes, it now triggers the pg_upgrade_scripts and pg_upgrade_bin flake version publishing workflows. This ensures that the necessary upgrade tools are published in sync with new PostgreSQL releases with the correct versioning.
4b0d2d2 to6817c84Comparehunleyd approved these changesNov 13, 2025
Sign up for freeto join this conversation on GitHub. Already have an account?Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Improvement of#1902 (reverted in#1905).
Manually create unique Postgres version names in branch often leads to version conflicts with the base branch versions. These conflicts force developers to deal with manual conflict resolution and unnecessary rebuilds.
To address this, this change implement automatic branch-based versioning for AMI builds triggered via workflow_dispatch on non-develop and non-release branches. The branch name is sanitized and appended to the Postgres version string.
We also publish pg_upgrade scripts and bin flake version right after the AMI release workflow completes.
Example: Branch 'multi-version-ext/pg-partman' produces postgres version 'multi-version-ext-pg-partman'