From 6392971f0f292ad8afb69f17980c5770007274f7 Mon Sep 17 00:00:00 2001 From: Sven Klemm Date: Sat, 17 Aug 2024 19:27:17 +0200 Subject: [PATCH] Add PG17 support --- pkg/pgutils/utils.go | 3 ++- pkg/tstune/utils.go | 1 + pkg/tstune/utils_test.go | 4 ++++ 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/pkg/pgutils/utils.go b/pkg/pgutils/utils.go index b9681d2..4c40790 100644 --- a/pkg/pgutils/utils.go +++ b/pkg/pgutils/utils.go @@ -16,6 +16,7 @@ const ( MajorVersion14 = "14" MajorVersion15 = "15" MajorVersion16 = "16" + MajorVersion17 = "17" ) const ( @@ -46,7 +47,7 @@ func ToPGMajorVersion(val string) (string, error) { return "", fmt.Errorf(errCouldNotParseVersionFmt, val) } switch res[1] { - case MajorVersion10, MajorVersion11, MajorVersion12, MajorVersion13, MajorVersion14, MajorVersion15, MajorVersion16: + case MajorVersion10, MajorVersion11, MajorVersion12, MajorVersion13, MajorVersion14, MajorVersion15, MajorVersion16, MajorVersion17: return res[1], nil case "7", "8", "9": return res[1] + res[2], nil diff --git a/pkg/tstune/utils.go b/pkg/tstune/utils.go index 07554f1..dee00c7 100644 --- a/pkg/tstune/utils.go +++ b/pkg/tstune/utils.go @@ -12,6 +12,7 @@ import ( // ValidPGVersions is a slice representing the major versions of PostgreSQL // for which recommendations can be generated. var ValidPGVersions = []string{ + pgutils.MajorVersion17, pgutils.MajorVersion16, pgutils.MajorVersion15, pgutils.MajorVersion14, diff --git a/pkg/tstune/utils_test.go b/pkg/tstune/utils_test.go index dd9882d..1179515 100644 --- a/pkg/tstune/utils_test.go +++ b/pkg/tstune/utils_test.go @@ -120,6 +120,7 @@ func TestGetPGMajorVersion(t *testing.T) { okPath14 := "pg_config_14" okPath15 := "pg_config_15" okPath16 := "pg_config_16" + okPath17 := "pg_config_17" okPath95 := "pg_config_9.5" okPath60 := "pg_config_6.0" cases := []struct { @@ -198,6 +199,8 @@ func TestGetPGMajorVersion(t *testing.T) { return "PostgreSQL 15.0", nil case okPath16: return "PostgreSQL 16.0", nil + case okPath17: + return "PostgreSQL 17.0", nil default: return "", exec.ErrNotFound } @@ -235,6 +238,7 @@ func TestValidatePGMajorVersion(t *testing.T) { pgutils.MajorVersion14: true, pgutils.MajorVersion15: true, pgutils.MajorVersion16: true, + pgutils.MajorVersion17: true, "9.5": false, "1.2.3": false, "9.6.6": false,