Skip to content

Commit 3eb98fd

Browse files
encimasamrose
andauthored
Update pgsql-http to handle semver (#1816)
* modified files to use major and minor version but pull full versions from repo * update http tests for major minor versions * chore: bump to test * chore: bump version to release * fix: replace lost text in name of checkharness * chore: also use semver with patch ver in 1.6 version --------- Co-authored-by: Sam Rose <[email protected]>
1 parent 4377de7 commit 3eb98fd

File tree

4 files changed

+17
-13
lines changed

4 files changed

+17
-13
lines changed

ansible/vars.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,9 @@ postgres_major:
1010

1111
# Full version strings for each major version
1212
postgres_release:
13-
postgresorioledb-17: 17.5.1.032-orioledb
14-
postgres17: 17.6.1.011
15-
postgres15: 15.14.1.011
13+
postgresorioledb-17: 17.5.1.033-orioledb
14+
postgres17: 17.6.1.012
15+
postgres15: 15.14.1.012
1616

1717
# Non Postgres Extensions
1818
pgbouncer_release: 1.19.0

nix/ext/pgsql-http.nix

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,8 @@ let
3030
version: hash:
3131
stdenv.mkDerivation rec {
3232
inherit pname version;
33+
# Use major.minor version for filenames (e.g., 1.5 instead of 1.5.0)
34+
fileVersion = lib.versions.majorMinor version;
3335

3436
buildInputs = [
3537
curl
@@ -49,22 +51,22 @@ let
4951
mkdir -p $out/{lib,share/postgresql/extension}
5052
5153
# Install versioned library
52-
install -Dm755 ${pname}${postgresql.dlSuffix} $out/lib/${pname}--${version}${postgresql.dlSuffix}
54+
install -Dm755 ${pname}${postgresql.dlSuffix} $out/lib/${pname}--${fileVersion}${postgresql.dlSuffix}
5355
54-
cp ${pname}--${version}.sql $out/share/postgresql/extension/${pname}--${version}.sql
56+
cp ${pname}--${fileVersion}.sql $out/share/postgresql/extension/${pname}--${fileVersion}.sql
5557
5658
# Create versioned control file with modified module path
5759
sed -e "/^default_version =/d" \
5860
-e "s|^module_pathname = .*|module_pathname = '\$libdir/${pname}'|" \
59-
${pname}.control > $out/share/postgresql/extension/${pname}--${version}.control
61+
${pname}.control > $out/share/postgresql/extension/${pname}--${fileVersion}.control
6062
6163
# For the latest version, create default control file and symlink and copy SQL upgrade scripts
6264
if [[ "${version}" == "${latestVersion}" ]]; then
6365
{
64-
echo "default_version = '${version}'"
65-
cat $out/share/postgresql/extension/${pname}--${version}.control
66+
echo "default_version = '${fileVersion}'"
67+
cat $out/share/postgresql/extension/${pname}--${fileVersion}.control
6668
} > $out/share/postgresql/extension/${pname}.control
67-
ln -sfn ${pname}--${latestVersion}${postgresql.dlSuffix} $out/lib/${pname}${postgresql.dlSuffix}
69+
ln -sfn ${pname}--${fileVersion}${postgresql.dlSuffix} $out/lib/${pname}${postgresql.dlSuffix}
6870
cp *.sql $out/share/postgresql/extension
6971
fi
7072

nix/ext/tests/http.nix

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -103,11 +103,13 @@ self.inputs.nixpkgs.lib.nixos.runTest {
103103
{ nodes, ... }:
104104
let
105105
pg17-configuration = "${nodes.server.system.build.toplevel}/specialisation/postgresql17";
106+
# Convert versions to major.minor format (e.g., "1.5.0" -> "1.5")
107+
toMajorMinor = map (v: lib.versions.majorMinor v);
106108
in
107109
''
108110
versions = {
109-
"15": [${lib.concatStringsSep ", " (map (s: ''"${s}"'') (versions "15"))}],
110-
"17": [${lib.concatStringsSep ", " (map (s: ''"${s}"'') (versions "17"))}],
111+
"15": [${lib.concatStringsSep ", " (map (s: ''"${s}"'') (toMajorMinor (versions "15")))}],
112+
"17": [${lib.concatStringsSep ", " (map (s: ''"${s}"'') (toMajorMinor (versions "17")))}],
111113
}
112114
113115
def run_sql(query):

nix/ext/versions.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
{
22
"http": {
3-
"1.5": {
3+
"1.5.0": {
44
"postgresql": [
55
"15"
66
],
77
"hash": "sha256-+N/CXm4arRgvhglanfvO0FNOBUWV5RL8mn/9FpNvcjY="
88
},
9-
"1.6": {
9+
"1.6.1": {
1010
"postgresql": [
1111
"15",
1212
"17"

0 commit comments

Comments
 (0)