Skip to content

Commit 42902bc

Browse files
jfrocheyvan-sraka
authored andcommitted
feat(pg_repack): use default nixos extension test
Lower the maintenance by reusing the default extension test.
1 parent 7c2878c commit 42902bc

File tree

2 files changed

+43
-177
lines changed

2 files changed

+43
-177
lines changed

nix/ext/tests/default.nix

Lines changed: 43 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,10 @@ let
1010
let
1111
pname = extension_name;
1212
inherit (pkgs) lib;
13+
14+
support_upgrade = if pname == "pg_repack" then false else true;
15+
run_pg_regress = if pname == "pg_repack" then false else true;
16+
1317
installedExtension =
1418
postgresMajorVersion: self.packages.${pkgs.system}."psql_${postgresMajorVersion}/exts/${pname}-all";
1519
versions = postgresqlMajorVersion: (installedExtension postgresqlMajorVersion).versions;
@@ -148,7 +152,7 @@ let
148152
extension_name = "${pname}"
149153
pg17_configuration = "${pg17-configuration}"
150154
ext_has_background_worker = ${
151-
if (installedExtension "15") ? hasBackgroundWorker then "True" else "False"
155+
if support_upgrade && (installedExtension "15") ? hasBackgroundWorker then "True" else "False"
152156
}
153157
sql_test_directory = Path("${../../tests}")
154158
pg_regress_test_name = "${(installedExtension "15").pgRegressTestName or pname}"
@@ -160,24 +164,40 @@ let
160164
server.wait_for_unit("multi-user.target")
161165
server.wait_for_unit("postgresql.service")
162166
163-
test = PostgresExtensionTest(server, extension_name, versions, sql_test_directory)
167+
test = PostgresExtensionTest(server, extension_name, versions, sql_test_directory, ${
168+
if support_upgrade then "True" else "False"
169+
})
164170
165171
with subtest("Check upgrade path with postgresql 15"):
166172
test.check_upgrade_path("15")
167173
168-
with subtest("Check pg_regress with postgresql 15 after extension upgrade"):
169-
test.check_pg_regress(Path("${psql_15}/lib/pgxs/src/test/regress/pg_regress"), "15", pg_regress_test_name)
174+
${
175+
if run_pg_regress then
176+
''
177+
with subtest("Check pg_regress with postgresql 15 after extension upgrade"):
178+
test.check_pg_regress(Path("${psql_15}/lib/pgxs/src/test/regress/pg_regress"), "15", pg_regress_test_name)
179+
''
180+
else
181+
""
182+
}
170183
171184
last_version = None
172185
with subtest("Check the install of the last version of the extension"):
173186
last_version = test.check_install_last_version("15")
174187
175-
if ext_has_background_worker:
176-
with subtest("Test switch_${pname}_version"):
177-
test.check_switch_extension_with_background_worker(Path("${psql_15}/lib/${pname}.so"), "15")
188+
${
189+
if support_upgrade then
190+
''
191+
if ext_has_background_worker:
192+
with subtest("Test switch_${pname}_version"):
193+
test.check_switch_extension_with_background_worker(Path("${psql_15}/lib/${pname}.so"), "15")
178194
179-
with subtest("Check pg_regress with postgresql 15 after installing the last version"):
180-
test.check_pg_regress(Path("${psql_15}/lib/pgxs/src/test/regress/pg_regress"), "15", pg_regress_test_name)
195+
with subtest("Check pg_regress with postgresql 15 after installing the last version"):
196+
test.check_pg_regress(Path("${psql_15}/lib/pgxs/src/test/regress/pg_regress"), "15", pg_regress_test_name)
197+
''
198+
else
199+
""
200+
}
181201
182202
with subtest("switch to postgresql 17"):
183203
server.succeed(
@@ -190,14 +210,21 @@ let
190210
with subtest("Check upgrade path with postgresql 17"):
191211
test.check_upgrade_path("17")
192212
193-
with subtest("Check pg_regress with postgresql 17 after extension upgrade"):
194-
test.check_pg_regress(Path("${psql_17}/lib/pgxs/src/test/regress/pg_regress"), "17", pg_regress_test_name)
213+
${
214+
if run_pg_regress then
215+
''
216+
with subtest("Check pg_regress with postgresql 17 after extension upgrade"):
217+
test.check_pg_regress(Path("${psql_17}/lib/pgxs/src/test/regress/pg_regress"), "17", pg_regress_test_name)
195218
196-
with subtest("Check the install of the last version of the extension"):
197-
test.check_install_last_version("17")
219+
with subtest("Check the install of the last version of the extension"):
220+
test.check_install_last_version("17")
198221
199-
with subtest("Check pg_regress with postgresql 17 after installing the last version"):
200-
test.check_pg_regress(Path("${psql_17}/lib/pgxs/src/test/regress/pg_regress"), "17", pg_regress_test_name)
222+
with subtest("Check pg_regress with postgresql 17 after installing the last version"):
223+
test.check_pg_regress(Path("${psql_17}/lib/pgxs/src/test/regress/pg_regress"), "17", pg_regress_test_name)
224+
''
225+
else
226+
""
227+
}
201228
'';
202229
};
203230
in
@@ -221,6 +248,7 @@ builtins.listToAttrs (
221248
"pg_hashids"
222249
"pg_jsonschema"
223250
"pg_net"
251+
"pg_repack"
224252
"pg_stat_monitor"
225253
"pg_tle"
226254
"pgaudit"

nix/ext/tests/pg_repack.nix

Lines changed: 0 additions & 162 deletions
This file was deleted.

0 commit comments

Comments
 (0)