diff --git a/packagelists/amd64/pg16.14-spock5.0.10-minimal.txt b/packagelists/amd64/pg16.14-spock5.0.10-minimal.txt new file mode 100644 index 0000000..b7ba6a0 --- /dev/null +++ b/packagelists/amd64/pg16.14-spock5.0.10-minimal.txt @@ -0,0 +1,4 @@ +pgedge-postgresql16-16.14-2.el9 +pgedge-spock50_16-5.0.10-1.el9 +pgedge-snowflake_16-2.5.0-1.el9 +pgedge-lolor_16-1.2.2-1.el9 diff --git a/packagelists/amd64/pg16.14-spock5.0.9-standard.txt b/packagelists/amd64/pg16.14-spock5.0.10-standard.txt similarity index 83% rename from packagelists/amd64/pg16.14-spock5.0.9-standard.txt rename to packagelists/amd64/pg16.14-spock5.0.10-standard.txt index ec78b34..b01a62e 100644 --- a/packagelists/amd64/pg16.14-spock5.0.9-standard.txt +++ b/packagelists/amd64/pg16.14-spock5.0.10-standard.txt @@ -1,6 +1,6 @@ pgedge-postgresql16-16.14-2.el9 -pgedge-spock50_16-5.0.9-1.el9 -pgedge-snowflake_16-2.4-1.el9 +pgedge-spock50_16-5.0.10-1.el9 +pgedge-snowflake_16-2.5.0-1.el9 pgedge-lolor_16-1.2.2-1.el9 pgedge-pgaudit_16-16.1-1.el9 pgedge-postgis35_16-3.5.5-1.el9 @@ -15,3 +15,4 @@ pgedge-pg-stat-monitor_16-2.3.0-1.el9 pgedge-vchord-bm25_16-0.2.2-1.el9 pgedge-vectorizer_16-1.0-1.el9 pgedge-system_stats_16-3.2.1-1.el9 +pgedge-supautils_16-3.2.2-1.el9 diff --git a/packagelists/amd64/pg16.14-spock5.0.9-minimal.txt b/packagelists/amd64/pg16.14-spock5.0.9-minimal.txt deleted file mode 100644 index 84cf3ab..0000000 --- a/packagelists/amd64/pg16.14-spock5.0.9-minimal.txt +++ /dev/null @@ -1,4 +0,0 @@ -pgedge-postgresql16-16.14-2.el9 -pgedge-spock50_16-5.0.9-1.el9 -pgedge-snowflake_16-2.4-1.el9 -pgedge-lolor_16-1.2.2-1.el9 diff --git a/packagelists/amd64/pg17.10-spock5.0.10-minimal.txt b/packagelists/amd64/pg17.10-spock5.0.10-minimal.txt new file mode 100644 index 0000000..de12886 --- /dev/null +++ b/packagelists/amd64/pg17.10-spock5.0.10-minimal.txt @@ -0,0 +1,4 @@ +pgedge-postgresql17-17.10-2.el9 +pgedge-spock50_17-5.0.10-1.el9 +pgedge-snowflake_17-2.5.0-1.el9 +pgedge-lolor_17-1.2.2-1.el9 diff --git a/packagelists/arm64/pg17.10-spock5.0.9-standard.txt b/packagelists/amd64/pg17.10-spock5.0.10-standard.txt similarity index 83% rename from packagelists/arm64/pg17.10-spock5.0.9-standard.txt rename to packagelists/amd64/pg17.10-spock5.0.10-standard.txt index a42ef97..9022ef8 100644 --- a/packagelists/arm64/pg17.10-spock5.0.9-standard.txt +++ b/packagelists/amd64/pg17.10-spock5.0.10-standard.txt @@ -1,6 +1,6 @@ pgedge-postgresql17-17.10-2.el9 -pgedge-spock50_17-5.0.9-1.el9 -pgedge-snowflake_17-2.4-1.el9 +pgedge-spock50_17-5.0.10-1.el9 +pgedge-snowflake_17-2.5.0-1.el9 pgedge-lolor_17-1.2.2-1.el9 pgedge-pgaudit_17-17.1-1.el9 pgedge-postgis35_17-3.5.5-1.el9 @@ -15,3 +15,4 @@ pgedge-pg-stat-monitor_17-2.3.0-1.el9 pgedge-vchord-bm25_17-0.2.2-1.el9 pgedge-vectorizer_17-1.0-1.el9 pgedge-system_stats_17-3.2.1-1.el9 +pgedge-supautils_17-3.2.2-1.el9 diff --git a/packagelists/amd64/pg17.10-spock5.0.9-minimal.txt b/packagelists/amd64/pg17.10-spock5.0.9-minimal.txt deleted file mode 100644 index a1e2e3f..0000000 --- a/packagelists/amd64/pg17.10-spock5.0.9-minimal.txt +++ /dev/null @@ -1,4 +0,0 @@ -pgedge-postgresql17-17.10-2.el9 -pgedge-spock50_17-5.0.9-1.el9 -pgedge-snowflake_17-2.4-1.el9 -pgedge-lolor_17-1.2.2-1.el9 diff --git a/packagelists/amd64/pg18.4-spock5.0.10-minimal.txt b/packagelists/amd64/pg18.4-spock5.0.10-minimal.txt new file mode 100644 index 0000000..f8aff7f --- /dev/null +++ b/packagelists/amd64/pg18.4-spock5.0.10-minimal.txt @@ -0,0 +1,4 @@ +pgedge-postgresql18-18.4-2.el9 +pgedge-spock50_18-5.0.10-1.el9 +pgedge-snowflake_18-2.5.0-1.el9 +pgedge-lolor_18-1.2.2-1.el9 diff --git a/packagelists/amd64/pg18.4-spock5.0.9-standard.txt b/packagelists/amd64/pg18.4-spock5.0.10-standard.txt similarity index 83% rename from packagelists/amd64/pg18.4-spock5.0.9-standard.txt rename to packagelists/amd64/pg18.4-spock5.0.10-standard.txt index e436c76..3a848f0 100644 --- a/packagelists/amd64/pg18.4-spock5.0.9-standard.txt +++ b/packagelists/amd64/pg18.4-spock5.0.10-standard.txt @@ -1,6 +1,6 @@ pgedge-postgresql18-18.4-2.el9 -pgedge-spock50_18-5.0.9-1.el9 -pgedge-snowflake_18-2.4-1.el9 +pgedge-spock50_18-5.0.10-1.el9 +pgedge-snowflake_18-2.5.0-1.el9 pgedge-lolor_18-1.2.2-1.el9 pgedge-pgaudit_18-18.0-1.el9 pgedge-postgis35_18-3.5.5-1.el9 @@ -15,3 +15,4 @@ pgedge-pg-stat-monitor_18-2.3.0-1.el9 pgedge-vchord-bm25_18-0.2.2-1.el9 pgedge-vectorizer_18-1.0-1.el9 pgedge-system_stats_18-3.2.1-1.el9 +pgedge-supautils_18-3.2.2-1.el9 diff --git a/packagelists/amd64/pg18.4-spock5.0.9-minimal.txt b/packagelists/amd64/pg18.4-spock5.0.9-minimal.txt deleted file mode 100644 index 4e590d5..0000000 --- a/packagelists/amd64/pg18.4-spock5.0.9-minimal.txt +++ /dev/null @@ -1,4 +0,0 @@ -pgedge-postgresql18-18.4-2.el9 -pgedge-spock50_18-5.0.9-1.el9 -pgedge-snowflake_18-2.4-1.el9 -pgedge-lolor_18-1.2.2-1.el9 diff --git a/packagelists/arm64/pg16.14-spock5.0.10-minimal.txt b/packagelists/arm64/pg16.14-spock5.0.10-minimal.txt new file mode 100644 index 0000000..b7ba6a0 --- /dev/null +++ b/packagelists/arm64/pg16.14-spock5.0.10-minimal.txt @@ -0,0 +1,4 @@ +pgedge-postgresql16-16.14-2.el9 +pgedge-spock50_16-5.0.10-1.el9 +pgedge-snowflake_16-2.5.0-1.el9 +pgedge-lolor_16-1.2.2-1.el9 diff --git a/packagelists/arm64/pg16.14-spock5.0.9-standard.txt b/packagelists/arm64/pg16.14-spock5.0.10-standard.txt similarity index 83% rename from packagelists/arm64/pg16.14-spock5.0.9-standard.txt rename to packagelists/arm64/pg16.14-spock5.0.10-standard.txt index ec78b34..b01a62e 100644 --- a/packagelists/arm64/pg16.14-spock5.0.9-standard.txt +++ b/packagelists/arm64/pg16.14-spock5.0.10-standard.txt @@ -1,6 +1,6 @@ pgedge-postgresql16-16.14-2.el9 -pgedge-spock50_16-5.0.9-1.el9 -pgedge-snowflake_16-2.4-1.el9 +pgedge-spock50_16-5.0.10-1.el9 +pgedge-snowflake_16-2.5.0-1.el9 pgedge-lolor_16-1.2.2-1.el9 pgedge-pgaudit_16-16.1-1.el9 pgedge-postgis35_16-3.5.5-1.el9 @@ -15,3 +15,4 @@ pgedge-pg-stat-monitor_16-2.3.0-1.el9 pgedge-vchord-bm25_16-0.2.2-1.el9 pgedge-vectorizer_16-1.0-1.el9 pgedge-system_stats_16-3.2.1-1.el9 +pgedge-supautils_16-3.2.2-1.el9 diff --git a/packagelists/arm64/pg16.14-spock5.0.9-minimal.txt b/packagelists/arm64/pg16.14-spock5.0.9-minimal.txt deleted file mode 100644 index 84cf3ab..0000000 --- a/packagelists/arm64/pg16.14-spock5.0.9-minimal.txt +++ /dev/null @@ -1,4 +0,0 @@ -pgedge-postgresql16-16.14-2.el9 -pgedge-spock50_16-5.0.9-1.el9 -pgedge-snowflake_16-2.4-1.el9 -pgedge-lolor_16-1.2.2-1.el9 diff --git a/packagelists/arm64/pg17.10-spock5.0.10-minimal.txt b/packagelists/arm64/pg17.10-spock5.0.10-minimal.txt new file mode 100644 index 0000000..de12886 --- /dev/null +++ b/packagelists/arm64/pg17.10-spock5.0.10-minimal.txt @@ -0,0 +1,4 @@ +pgedge-postgresql17-17.10-2.el9 +pgedge-spock50_17-5.0.10-1.el9 +pgedge-snowflake_17-2.5.0-1.el9 +pgedge-lolor_17-1.2.2-1.el9 diff --git a/packagelists/amd64/pg17.10-spock5.0.9-standard.txt b/packagelists/arm64/pg17.10-spock5.0.10-standard.txt similarity index 83% rename from packagelists/amd64/pg17.10-spock5.0.9-standard.txt rename to packagelists/arm64/pg17.10-spock5.0.10-standard.txt index a42ef97..9022ef8 100644 --- a/packagelists/amd64/pg17.10-spock5.0.9-standard.txt +++ b/packagelists/arm64/pg17.10-spock5.0.10-standard.txt @@ -1,6 +1,6 @@ pgedge-postgresql17-17.10-2.el9 -pgedge-spock50_17-5.0.9-1.el9 -pgedge-snowflake_17-2.4-1.el9 +pgedge-spock50_17-5.0.10-1.el9 +pgedge-snowflake_17-2.5.0-1.el9 pgedge-lolor_17-1.2.2-1.el9 pgedge-pgaudit_17-17.1-1.el9 pgedge-postgis35_17-3.5.5-1.el9 @@ -15,3 +15,4 @@ pgedge-pg-stat-monitor_17-2.3.0-1.el9 pgedge-vchord-bm25_17-0.2.2-1.el9 pgedge-vectorizer_17-1.0-1.el9 pgedge-system_stats_17-3.2.1-1.el9 +pgedge-supautils_17-3.2.2-1.el9 diff --git a/packagelists/arm64/pg17.10-spock5.0.9-minimal.txt b/packagelists/arm64/pg17.10-spock5.0.9-minimal.txt deleted file mode 100644 index a1e2e3f..0000000 --- a/packagelists/arm64/pg17.10-spock5.0.9-minimal.txt +++ /dev/null @@ -1,4 +0,0 @@ -pgedge-postgresql17-17.10-2.el9 -pgedge-spock50_17-5.0.9-1.el9 -pgedge-snowflake_17-2.4-1.el9 -pgedge-lolor_17-1.2.2-1.el9 diff --git a/packagelists/arm64/pg18.4-spock5.0.10-minimal.txt b/packagelists/arm64/pg18.4-spock5.0.10-minimal.txt new file mode 100644 index 0000000..f8aff7f --- /dev/null +++ b/packagelists/arm64/pg18.4-spock5.0.10-minimal.txt @@ -0,0 +1,4 @@ +pgedge-postgresql18-18.4-2.el9 +pgedge-spock50_18-5.0.10-1.el9 +pgedge-snowflake_18-2.5.0-1.el9 +pgedge-lolor_18-1.2.2-1.el9 diff --git a/packagelists/arm64/pg18.4-spock5.0.9-standard.txt b/packagelists/arm64/pg18.4-spock5.0.10-standard.txt similarity index 83% rename from packagelists/arm64/pg18.4-spock5.0.9-standard.txt rename to packagelists/arm64/pg18.4-spock5.0.10-standard.txt index e436c76..3a848f0 100644 --- a/packagelists/arm64/pg18.4-spock5.0.9-standard.txt +++ b/packagelists/arm64/pg18.4-spock5.0.10-standard.txt @@ -1,6 +1,6 @@ pgedge-postgresql18-18.4-2.el9 -pgedge-spock50_18-5.0.9-1.el9 -pgedge-snowflake_18-2.4-1.el9 +pgedge-spock50_18-5.0.10-1.el9 +pgedge-snowflake_18-2.5.0-1.el9 pgedge-lolor_18-1.2.2-1.el9 pgedge-pgaudit_18-18.0-1.el9 pgedge-postgis35_18-3.5.5-1.el9 @@ -15,3 +15,4 @@ pgedge-pg-stat-monitor_18-2.3.0-1.el9 pgedge-vchord-bm25_18-0.2.2-1.el9 pgedge-vectorizer_18-1.0-1.el9 pgedge-system_stats_18-3.2.1-1.el9 +pgedge-supautils_18-3.2.2-1.el9 diff --git a/packagelists/arm64/pg18.4-spock5.0.9-minimal.txt b/packagelists/arm64/pg18.4-spock5.0.9-minimal.txt deleted file mode 100644 index 4e590d5..0000000 --- a/packagelists/arm64/pg18.4-spock5.0.9-minimal.txt +++ /dev/null @@ -1,4 +0,0 @@ -pgedge-postgresql18-18.4-2.el9 -pgedge-spock50_18-5.0.9-1.el9 -pgedge-snowflake_18-2.4-1.el9 -pgedge-lolor_18-1.2.2-1.el9 diff --git a/scripts/build_pgedge_images.py b/scripts/build_pgedge_images.py index 880e50c..70a4994 100755 --- a/scripts/build_pgedge_images.py +++ b/scripts/build_pgedge_images.py @@ -162,7 +162,7 @@ def make_all_flavor_images( # pg16 images *make_all_flavor_images( postgres_version="16.14", - spock_version="5.0.9", + spock_version="5.0.10", epoch=1, is_latest_for_pg_major=True, is_latest_for_spock_major=True, @@ -170,7 +170,7 @@ def make_all_flavor_images( # pg17 images *make_all_flavor_images( postgres_version="17.10", - spock_version="5.0.9", + spock_version="5.0.10", epoch=1, is_latest_for_pg_major=True, is_latest_for_spock_major=True, @@ -178,7 +178,7 @@ def make_all_flavor_images( # pg18 images *make_all_flavor_images( postgres_version="18.4", - spock_version="5.0.9", + spock_version="5.0.10", epoch=1, is_latest_for_pg_major=True, is_latest_for_spock_major=True, diff --git a/tests/main.go b/tests/main.go index 71aca27..be2cc73 100644 --- a/tests/main.go +++ b/tests/main.go @@ -377,7 +377,7 @@ func (r *TestRunner) Start() error { // Note: We only include extensions that are guaranteed to be in all images sharedLibs := "spock,snowflake" if r.flavor == "standard" { - sharedLibs = "spock,snowflake,pgaudit" + sharedLibs = "spock,snowflake,pgaudit,supautils" } // Build postgres command with required configuration @@ -724,7 +724,41 @@ func getCommonExtensionTests() []Test { } func getStandardOnlyTests() []Test { - return append(getSystemStatsAndVectorTests(), getPostGISAuditBackrestTests()...) + tests := append(getSystemStatsAndVectorTests(), getPostGISAuditBackrestTests()...) + return append(tests, getSupautilsTests()...) +} + +func getSupautilsTests() []Test { + return []Test{ + { + // supautils is a shared_preload_libraries-only module (no CREATE EXTENSION, + // no SQL functions/views). Its only SQL-visible evidence of a successful + // load is the GUCs it registers in _PG_init, so we assert those exist in + // pg_settings. This query never raises, returning 't' only when the + // library was actually preloaded and initialized. + Name: "supautils is preloaded", + StandardOnly: true, + Cmd: "psql -U postgres -d testdb -t -A -c \"SELECT EXISTS (SELECT 1 FROM pg_settings WHERE name LIKE 'supautils.%');\"", + ExpectedOutput: func(exitCode int, output string) error { + if exitCode != 0 { + return fmt.Errorf("unexpected exit code: %d", exitCode) + } + if strings.TrimSpace(output) != "t" { + return fmt.Errorf("unexpected output: %s (expected 't')", output) + } + return nil + }, + }, + { + // A registered GUC is readable via SHOW. If supautils were not loaded this + // errors with 'unrecognized configuration parameter', so a clean exit + // confirms the library registered its settings. + Name: "supautils GUC is accessible", + StandardOnly: true, + Cmd: "psql -U postgres -d testdb -t -A -c \"SHOW supautils.reserved_roles;\"", + ExpectedOutput: expectSuccess, + }, + } } func getSystemStatsAndVectorTests() []Test {