Skip to content

Commit 11082cd

Browse files
committed
feat(sqlserverflex): migrate to v3 API
1 parent 632876f commit 11082cd

36 files changed

Lines changed: 562 additions & 585 deletions

go.mod

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ require (
3636
github.com/stackitcloud/stackit-sdk-go/services/serviceaccount v0.12.0
3737
github.com/stackitcloud/stackit-sdk-go/services/serviceenablement v1.2.7
3838
github.com/stackitcloud/stackit-sdk-go/services/ske v1.11.0
39-
github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex v1.11.0
39+
github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex v1.16.0
4040
github.com/stackitcloud/stackit-sdk-go/services/vpn v0.14.0
4141
github.com/zalando/go-keyring v0.2.8
4242
golang.org/x/mod v0.34.0

go.sum

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -650,8 +650,8 @@ github.com/stackitcloud/stackit-sdk-go/services/sfs v0.9.0 h1:JWAFnskRbNKT8x62pZ
650650
github.com/stackitcloud/stackit-sdk-go/services/sfs v0.9.0/go.mod h1:jMlBoXqrPNX5nXbo6oT7exalqilw1jiLPoIp4Cn0CdI=
651651
github.com/stackitcloud/stackit-sdk-go/services/ske v1.11.0 h1:QoKyQPe8FqDqJLNgE5uRlZ/y1c1GUxjV1DDLu5QEBD8=
652652
github.com/stackitcloud/stackit-sdk-go/services/ske v1.11.0/go.mod h1:KhVYCR58wETqdI7Quwhe3OR3BhB2T/b7DzaMsfDnr8g=
653-
github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex v1.11.0 h1:PwjQeupEnXxhu+uWCUzO/hUfL4yqNblOcZbP2jvaQtU=
654-
github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex v1.11.0/go.mod h1:AiUoMAqQcOlMgDtkVJlqI7P/VGD5xjN3dYjERGnwN/M=
653+
github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex v1.16.0 h1:A6zN5JUz5DOTigTxAyAC+4p5VpJzaYDftx2yIH0mgn8=
654+
github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex v1.16.0/go.mod h1:AiUoMAqQcOlMgDtkVJlqI7P/VGD5xjN3dYjERGnwN/M=
655655
github.com/stackitcloud/stackit-sdk-go/services/vpn v0.14.0 h1:LMgbzhPunuelsIsfyEj/5O/aYfNcg/eGHsnZ7AZOhYg=
656656
github.com/stackitcloud/stackit-sdk-go/services/vpn v0.14.0/go.mod h1:toIjQk1dhxdUFVyCWJJja0w/0nFpDid8MWX0ukQfvfo=
657657
github.com/stbenjam/no-sprintf-host-port v0.3.1 h1:AyX7+dxI4IdLBPtDbsGAyqiTSLpCP9hWRrXQDU4Cm/g=

internal/cmd/beta/sqlserverflex/database/create/create.go

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import (
66

77
"github.com/stackitcloud/stackit-cli/internal/pkg/types"
88

9-
sqlserverflex "github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex/v2api"
9+
sqlserverflex "github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex/v3api"
1010

1111
"github.com/stackitcloud/stackit-cli/internal/pkg/args"
1212
"github.com/stackitcloud/stackit-cli/internal/pkg/errors"
@@ -108,12 +108,10 @@ func parseInput(p *print.Printer, cmd *cobra.Command, inputArgs []string) (*inpu
108108
}
109109

110110
func buildRequest(ctx context.Context, model *inputModel, apiClient *sqlserverflex.APIClient) sqlserverflex.ApiCreateDatabaseRequest {
111-
req := apiClient.DefaultAPI.CreateDatabase(ctx, model.ProjectId, model.InstanceId, model.Region)
111+
req := apiClient.DefaultAPI.CreateDatabase(ctx, model.ProjectId, model.Region, model.InstanceId)
112112
payload := sqlserverflex.CreateDatabasePayload{
113-
Name: model.DatabaseName,
114-
Options: sqlserverflex.DatabaseDocumentationCreateDatabaseRequestOptions{
115-
Owner: model.Owner,
116-
},
113+
Name: model.DatabaseName,
114+
Owner: model.Owner,
117115
}
118116
req = req.CreateDatabasePayload(payload)
119117
return req

internal/cmd/beta/sqlserverflex/database/create/create_test.go

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import (
77
"github.com/google/go-cmp/cmp"
88
"github.com/google/go-cmp/cmp/cmpopts"
99
"github.com/google/uuid"
10-
sqlserverflex "github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex/v2api"
10+
sqlserverflex "github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex/v3api"
1111

1212
"github.com/stackitcloud/stackit-cli/internal/pkg/testparams"
1313

@@ -67,12 +67,10 @@ func fixtureInputModel(mods ...func(model *inputModel)) *inputModel {
6767
}
6868

6969
func fixtureRequest(mods ...func(request *sqlserverflex.ApiCreateDatabaseRequest)) sqlserverflex.ApiCreateDatabaseRequest {
70-
request := testClient.DefaultAPI.CreateDatabase(testCtx, testProjectId, testInstanceId, testRegion)
70+
request := testClient.DefaultAPI.CreateDatabase(testCtx, testProjectId, testRegion, testInstanceId)
7171
payload := sqlserverflex.CreateDatabasePayload{
72-
Name: testDatabaseName,
73-
Options: sqlserverflex.DatabaseDocumentationCreateDatabaseRequestOptions{
74-
Owner: testOwner,
75-
},
72+
Name: testDatabaseName,
73+
Owner: testOwner,
7674
}
7775
request = request.CreateDatabasePayload(payload)
7876
for _, mod := range mods {

internal/cmd/beta/sqlserverflex/database/delete/delete.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ import (
1616
"github.com/stackitcloud/stackit-cli/internal/pkg/spinner"
1717

1818
"github.com/spf13/cobra"
19-
sqlserverflex "github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex/v2api"
19+
sqlserverflex "github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex/v3api"
2020
)
2121

2222
const (
@@ -107,6 +107,6 @@ func parseInput(p *print.Printer, cmd *cobra.Command, inputArgs []string) (*inpu
107107
}
108108

109109
func buildRequest(ctx context.Context, model *inputModel, apiClient *sqlserverflex.APIClient) sqlserverflex.ApiDeleteDatabaseRequest {
110-
req := apiClient.DefaultAPI.DeleteDatabase(ctx, model.ProjectId, model.InstanceId, model.DatabaseName, model.Region)
110+
req := apiClient.DefaultAPI.DeleteDatabase(ctx, model.ProjectId, model.Region, model.InstanceId, model.DatabaseName)
111111
return req
112112
}

internal/cmd/beta/sqlserverflex/database/delete/delete_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import (
44
"context"
55
"testing"
66

7-
sqlserverflex "github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex/v2api"
7+
sqlserverflex "github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex/v3api"
88

99
"github.com/stackitcloud/stackit-cli/internal/pkg/globalflags"
1010
"github.com/stackitcloud/stackit-cli/internal/pkg/testutils"
@@ -63,7 +63,7 @@ func fixtureInputModel(mods ...func(model *inputModel)) *inputModel {
6363
}
6464

6565
func fixtureRequest(mods ...func(request *sqlserverflex.ApiDeleteDatabaseRequest)) sqlserverflex.ApiDeleteDatabaseRequest {
66-
request := testClient.DefaultAPI.DeleteDatabase(testCtx, testProjectId, testInstanceId, testDatabaseName, testRegion)
66+
request := testClient.DefaultAPI.DeleteDatabase(testCtx, testProjectId, testRegion, testInstanceId, testDatabaseName)
6767
for _, mod := range mods {
6868
mod(&request)
6969
}

internal/cmd/beta/sqlserverflex/database/describe/describe.go

Lines changed: 10 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import (
77
"github.com/stackitcloud/stackit-cli/internal/pkg/types"
88

99
"github.com/spf13/cobra"
10-
sqlserverflex "github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex/v2api"
10+
sqlserverflex "github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex/v3api"
1111

1212
"github.com/stackitcloud/stackit-cli/internal/pkg/args"
1313
"github.com/stackitcloud/stackit-cli/internal/pkg/errors"
@@ -17,7 +17,6 @@ import (
1717
"github.com/stackitcloud/stackit-cli/internal/pkg/print"
1818
"github.com/stackitcloud/stackit-cli/internal/pkg/services/sqlserverflex/client"
1919
"github.com/stackitcloud/stackit-cli/internal/pkg/tables"
20-
"github.com/stackitcloud/stackit-cli/internal/pkg/utils"
2120
)
2221

2322
const (
@@ -98,35 +97,26 @@ func parseInput(p *print.Printer, cmd *cobra.Command, inputArgs []string) (*inpu
9897
}
9998

10099
func buildRequest(ctx context.Context, model *inputModel, apiClient *sqlserverflex.APIClient) sqlserverflex.ApiGetDatabaseRequest {
101-
req := apiClient.DefaultAPI.GetDatabase(ctx, model.ProjectId, model.InstanceId, model.DatabaseName, model.Region)
100+
req := apiClient.DefaultAPI.GetDatabase(ctx, model.ProjectId, model.Region, model.InstanceId, model.DatabaseName)
102101
return req
103102
}
104103

105104
func outputResult(p *print.Printer, outputFormat string, resp *sqlserverflex.GetDatabaseResponse) error {
106-
if resp == nil || resp.Database == nil {
105+
if resp == nil {
107106
return fmt.Errorf("database response is empty")
108107
}
109108

110109
return p.OutputResult(outputFormat, resp, func() error {
111-
database := resp.Database
112110
table := tables.NewTable()
113-
table.AddRow("ID", utils.PtrString(database.Id))
111+
table.AddRow("ID", resp.Id)
114112
table.AddSeparator()
115-
table.AddRow("NAME", utils.PtrString(database.Name))
113+
table.AddRow("NAME", resp.Name)
116114
table.AddSeparator()
117-
if database.Options != nil {
118-
if database.Options.CompatibilityLevel != nil {
119-
table.AddRow("COMPATIBILITY LEVEL", *database.Options.CompatibilityLevel)
120-
table.AddSeparator()
121-
}
122-
if database.Options.Owner != nil {
123-
table.AddRow("OWNER", *database.Options.Owner)
124-
table.AddSeparator()
125-
}
126-
if database.Options.CollationName != nil {
127-
table.AddRow("COLLATION", *database.Options.CollationName)
128-
}
129-
}
115+
table.AddRow("COMPATIBILITY LEVEL", resp.CompatibilityLevel)
116+
table.AddSeparator()
117+
table.AddRow("OWNER", resp.Owner)
118+
table.AddSeparator()
119+
table.AddRow("COLLATION", resp.CollationName)
130120
err := table.Display(p)
131121
if err != nil {
132122
return fmt.Errorf("render table: %w", err)

internal/cmd/beta/sqlserverflex/database/describe/describe_test.go

Lines changed: 2 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import (
77
"github.com/google/go-cmp/cmp"
88
"github.com/google/go-cmp/cmp/cmpopts"
99
"github.com/google/uuid"
10-
sqlserverflex "github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex/v2api"
10+
sqlserverflex "github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex/v3api"
1111

1212
"github.com/stackitcloud/stackit-cli/internal/pkg/testparams"
1313

@@ -64,7 +64,7 @@ func fixtureInputModel(mods ...func(model *inputModel)) *inputModel {
6464
}
6565

6666
func fixtureRequest(mods ...func(request *sqlserverflex.ApiGetDatabaseRequest)) sqlserverflex.ApiGetDatabaseRequest {
67-
request := testClient.DefaultAPI.GetDatabase(testCtx, testProjectId, testInstanceId, testDatabaseName, testRegion)
67+
request := testClient.DefaultAPI.GetDatabase(testCtx, testProjectId, testRegion, testInstanceId, testDatabaseName)
6868
for _, mod := range mods {
6969
mod(&request)
7070
}
@@ -210,20 +210,6 @@ func TestOutputResult(t *testing.T) {
210210
args: args{},
211211
wantErr: true,
212212
},
213-
{
214-
name: "empty response",
215-
args: args{
216-
resp: &sqlserverflex.GetDatabaseResponse{},
217-
},
218-
wantErr: true,
219-
},
220-
{
221-
name: "only database as argument",
222-
args: args{
223-
resp: &sqlserverflex.GetDatabaseResponse{Database: &sqlserverflex.SingleDatabase{}},
224-
},
225-
wantErr: false,
226-
},
227213
}
228214
params := testparams.NewTestParams()
229215

internal/cmd/beta/sqlserverflex/database/list/list.go

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import (
77
"github.com/stackitcloud/stackit-cli/internal/pkg/types"
88

99
"github.com/spf13/cobra"
10-
sqlserverflex "github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex/v2api"
10+
sqlserverflex "github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex/v3api"
1111

1212
"github.com/stackitcloud/stackit-cli/internal/pkg/args"
1313
"github.com/stackitcloud/stackit-cli/internal/pkg/errors"
@@ -18,7 +18,6 @@ import (
1818
"github.com/stackitcloud/stackit-cli/internal/pkg/projectname"
1919
"github.com/stackitcloud/stackit-cli/internal/pkg/services/sqlserverflex/client"
2020
"github.com/stackitcloud/stackit-cli/internal/pkg/tables"
21-
"github.com/stackitcloud/stackit-cli/internal/pkg/utils"
2221
)
2322

2423
const (
@@ -122,11 +121,11 @@ func parseInput(p *print.Printer, cmd *cobra.Command, _ []string) (*inputModel,
122121
}
123122

124123
func buildRequest(ctx context.Context, model *inputModel, apiClient *sqlserverflex.APIClient) sqlserverflex.ApiListDatabasesRequest {
125-
req := apiClient.DefaultAPI.ListDatabases(ctx, model.ProjectId, model.InstanceId, model.Region)
124+
req := apiClient.DefaultAPI.ListDatabases(ctx, model.ProjectId, model.Region, model.InstanceId)
126125
return req
127126
}
128127

129-
func outputResult(p *print.Printer, outputFormat, instanceId, projectLabel string, databases []sqlserverflex.Database) error {
128+
func outputResult(p *print.Printer, outputFormat, instanceId, projectLabel string, databases []sqlserverflex.ListDatabase) error {
130129
return p.OutputResult(outputFormat, databases, func() error {
131130
if len(databases) == 0 {
132131
p.Outputf("No databases found for instance %s on project %s\n", instanceId, projectLabel)
@@ -137,7 +136,7 @@ func outputResult(p *print.Printer, outputFormat, instanceId, projectLabel strin
137136
table.SetHeader("ID", "NAME")
138137
for i := range databases {
139138
database := databases[i]
140-
table.AddRow(utils.PtrString(database.Id), utils.PtrString(database.Name))
139+
table.AddRow(database.Id, database.Name)
141140
}
142141
err := table.Display(p)
143142
if err != nil {

internal/cmd/beta/sqlserverflex/database/list/list_test.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import (
77
"github.com/google/go-cmp/cmp"
88
"github.com/google/go-cmp/cmp/cmpopts"
99
"github.com/google/uuid"
10-
sqlserverflex "github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex/v2api"
10+
sqlserverflex "github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex/v3api"
1111

1212
"github.com/stackitcloud/stackit-cli/internal/pkg/testparams"
1313

@@ -56,7 +56,7 @@ func fixtureInputModel(mods ...func(model *inputModel)) *inputModel {
5656
}
5757

5858
func fixtureRequest(mods ...func(request *sqlserverflex.ApiListDatabasesRequest)) sqlserverflex.ApiListDatabasesRequest {
59-
request := testClient.DefaultAPI.ListDatabases(testCtx, testProjectId, testInstanceId, testRegion)
59+
request := testClient.DefaultAPI.ListDatabases(testCtx, testProjectId, testRegion, testInstanceId)
6060
for _, mod := range mods {
6161
mod(&request)
6262
}
@@ -180,7 +180,7 @@ func TestOutputResult(t *testing.T) {
180180
outputFormat string
181181
instanceId string
182182
projectLabel string
183-
databases []sqlserverflex.Database
183+
databases []sqlserverflex.ListDatabase
184184
}
185185
tests := []struct {
186186
name string
@@ -195,7 +195,7 @@ func TestOutputResult(t *testing.T) {
195195
{
196196
name: "empty database in databases slice",
197197
args: args{
198-
databases: []sqlserverflex.Database{{}},
198+
databases: []sqlserverflex.ListDatabase{{}},
199199
},
200200
wantErr: false,
201201
},

0 commit comments

Comments
 (0)