Skip to content

Commit c271fd0

Browse files
committed
adjust public-ip commands
1 parent da97439 commit c271fd0

File tree

14 files changed

+86
-54
lines changed

14 files changed

+86
-54
lines changed

internal/cmd/public-ip/associate/associate.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ func NewCmd(params *params.CmdParams) *cobra.Command {
5656
return err
5757
}
5858

59-
publicIpLabel, _, err := iaasUtils.GetPublicIP(ctx, apiClient, model.ProjectId, model.PublicIpId)
59+
publicIpLabel, _, err := iaasUtils.GetPublicIP(ctx, apiClient, model.ProjectId, model.Region, model.PublicIpId)
6060
if err != nil {
6161
params.Printer.Debug(print.ErrorLevel, "get public IP: %v", err)
6262
publicIpLabel = model.PublicIpId
@@ -113,7 +113,7 @@ func parseInput(p *print.Printer, cmd *cobra.Command, inputArgs []string) (*inpu
113113
}
114114

115115
func buildRequest(ctx context.Context, model *inputModel, apiClient *iaas.APIClient) iaas.ApiUpdatePublicIPRequest {
116-
req := apiClient.UpdatePublicIP(ctx, model.ProjectId, model.PublicIpId)
116+
req := apiClient.UpdatePublicIP(ctx, model.ProjectId, model.Region, model.PublicIpId)
117117

118118
payload := iaas.UpdatePublicIPPayload{
119119
NetworkInterface: iaas.NewNullableString(model.AssociatedResourceId),

internal/cmd/public-ip/associate/associate_test.go

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,9 @@ import (
1414
"github.com/stackitcloud/stackit-sdk-go/services/iaas"
1515
)
1616

17-
var projectIdFlag = globalflags.ProjectIdFlag
17+
const (
18+
testRegion = "eu01"
19+
)
1820

1921
type testCtxKey struct{}
2022

@@ -37,7 +39,9 @@ func fixtureArgValues(mods ...func(argValues []string)) []string {
3739

3840
func fixtureFlagValues(mods ...func(flagValues map[string]string)) map[string]string {
3941
flagValues := map[string]string{
40-
projectIdFlag: testProjectId,
42+
globalflags.ProjectIdFlag: testProjectId,
43+
globalflags.RegionFlag: testRegion,
44+
4145
associatedResourceIdFlag: testAssociatedResourceId,
4246
}
4347
for _, mod := range mods {
@@ -51,6 +55,7 @@ func fixtureInputModel(mods ...func(model *inputModel)) *inputModel {
5155
GlobalFlagModel: &globalflags.GlobalFlagModel{
5256
ProjectId: testProjectId,
5357
Verbosity: globalflags.VerbosityDefault,
58+
Region: testRegion,
5459
},
5560
PublicIpId: testPublicIpId,
5661
AssociatedResourceId: utils.Ptr(testAssociatedResourceId),
@@ -62,7 +67,7 @@ func fixtureInputModel(mods ...func(model *inputModel)) *inputModel {
6267
}
6368

6469
func fixtureRequest(mods ...func(request *iaas.ApiUpdatePublicIPRequest)) iaas.ApiUpdatePublicIPRequest {
65-
request := testClient.UpdatePublicIP(testCtx, testProjectId, testPublicIpId)
70+
request := testClient.UpdatePublicIP(testCtx, testProjectId, testRegion, testPublicIpId)
6671
request = request.UpdatePublicIPPayload(fixturePayload())
6772
for _, mod := range mods {
6873
mod(&request)
@@ -105,23 +110,23 @@ func TestParseInput(t *testing.T) {
105110
description: "project id missing",
106111
argValues: fixtureArgValues(),
107112
flagValues: fixtureFlagValues(func(flagValues map[string]string) {
108-
delete(flagValues, projectIdFlag)
113+
delete(flagValues, globalflags.ProjectIdFlag)
109114
}),
110115
isValid: false,
111116
},
112117
{
113118
description: "project id invalid 1",
114119
argValues: fixtureArgValues(),
115120
flagValues: fixtureFlagValues(func(flagValues map[string]string) {
116-
flagValues[projectIdFlag] = ""
121+
flagValues[globalflags.ProjectIdFlag] = ""
117122
}),
118123
isValid: false,
119124
},
120125
{
121126
description: "project id invalid 2",
122127
argValues: fixtureArgValues(),
123128
flagValues: fixtureFlagValues(func(flagValues map[string]string) {
124-
flagValues[projectIdFlag] = "invalid-uuid"
129+
flagValues[globalflags.ProjectIdFlag] = "invalid-uuid"
125130
}),
126131
isValid: false,
127132
},

internal/cmd/public-ip/create/create.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@ func parseInput(p *print.Printer, cmd *cobra.Command, _ []string) (*inputModel,
114114
}
115115

116116
func buildRequest(ctx context.Context, model *inputModel, apiClient *iaas.APIClient) iaas.ApiCreatePublicIPRequest {
117-
req := apiClient.CreatePublicIP(ctx, model.ProjectId)
117+
req := apiClient.CreatePublicIP(ctx, model.ProjectId, model.Region)
118118

119119
payload := iaas.CreatePublicIPPayload{
120120
NetworkInterface: iaas.NewNullableString(model.AssociatedResourceId),

internal/cmd/public-ip/create/create_test.go

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,9 @@ import (
1616
"github.com/stackitcloud/stackit-sdk-go/services/iaas"
1717
)
1818

19-
var projectIdFlag = globalflags.ProjectIdFlag
19+
const (
20+
testRegion = "eu01"
21+
)
2022

2123
type testCtxKey struct{}
2224

@@ -28,7 +30,9 @@ var testAssociatedResourceId = uuid.NewString()
2830

2931
func fixtureFlagValues(mods ...func(flagValues map[string]string)) map[string]string {
3032
flagValues := map[string]string{
31-
projectIdFlag: testProjectId,
33+
globalflags.ProjectIdFlag: testProjectId,
34+
globalflags.RegionFlag: testRegion,
35+
3236
associatedResourceIdFlag: testAssociatedResourceId,
3337
labelFlag: "key=value",
3438
}
@@ -43,6 +47,7 @@ func fixtureInputModel(mods ...func(model *inputModel)) *inputModel {
4347
GlobalFlagModel: &globalflags.GlobalFlagModel{
4448
ProjectId: testProjectId,
4549
Verbosity: globalflags.VerbosityDefault,
50+
Region: testRegion,
4651
},
4752
AssociatedResourceId: utils.Ptr(testAssociatedResourceId),
4853
Labels: utils.Ptr(map[string]string{
@@ -56,7 +61,7 @@ func fixtureInputModel(mods ...func(model *inputModel)) *inputModel {
5661
}
5762

5863
func fixtureRequest(mods ...func(request *iaas.ApiCreatePublicIPRequest)) iaas.ApiCreatePublicIPRequest {
59-
request := testClient.CreatePublicIP(testCtx, testProjectId)
64+
request := testClient.CreatePublicIP(testCtx, testProjectId, testRegion)
6065
request = request.CreatePublicIPPayload(fixturePayload())
6166
for _, mod := range mods {
6267
mod(&request)
@@ -122,21 +127,21 @@ func TestParseInput(t *testing.T) {
122127
{
123128
description: "project id missing",
124129
flagValues: fixtureFlagValues(func(flagValues map[string]string) {
125-
delete(flagValues, projectIdFlag)
130+
delete(flagValues, globalflags.ProjectIdFlag)
126131
}),
127132
isValid: false,
128133
},
129134
{
130135
description: "project id invalid 1",
131136
flagValues: fixtureFlagValues(func(flagValues map[string]string) {
132-
flagValues[projectIdFlag] = ""
137+
flagValues[globalflags.ProjectIdFlag] = ""
133138
}),
134139
isValid: false,
135140
},
136141
{
137142
description: "project id invalid 2",
138143
flagValues: fixtureFlagValues(func(flagValues map[string]string) {
139-
flagValues[projectIdFlag] = "invalid-uuid"
144+
flagValues[globalflags.ProjectIdFlag] = "invalid-uuid"
140145
}),
141146
isValid: false,
142147
},

internal/cmd/public-ip/delete/delete.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ func NewCmd(params *params.CmdParams) *cobra.Command {
5454
return err
5555
}
5656

57-
publicIpLabel, _, err := iaasUtils.GetPublicIP(ctx, apiClient, model.ProjectId, model.PublicIpId)
57+
publicIpLabel, _, err := iaasUtils.GetPublicIP(ctx, apiClient, model.ProjectId, model.Region, model.PublicIpId)
5858
if err != nil {
5959
params.Printer.Debug(print.ErrorLevel, "get public IP: %v", err)
6060
publicIpLabel = model.PublicIpId
@@ -102,5 +102,5 @@ func parseInput(p *print.Printer, cmd *cobra.Command, inputArgs []string) (*inpu
102102
}
103103

104104
func buildRequest(ctx context.Context, model *inputModel, apiClient *iaas.APIClient) iaas.ApiDeletePublicIPRequest {
105-
return apiClient.DeletePublicIP(ctx, model.ProjectId, model.PublicIpId)
105+
return apiClient.DeletePublicIP(ctx, model.ProjectId, model.Region, model.PublicIpId)
106106
}

internal/cmd/public-ip/delete/delete_test.go

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,9 @@ import (
1313
"github.com/stackitcloud/stackit-sdk-go/services/iaas"
1414
)
1515

16-
var projectIdFlag = globalflags.ProjectIdFlag
16+
const (
17+
testRegion = "eu01"
18+
)
1719

1820
type testCtxKey struct{}
1921

@@ -34,7 +36,8 @@ func fixtureArgValues(mods ...func(argValues []string)) []string {
3436

3537
func fixtureFlagValues(mods ...func(flagValues map[string]string)) map[string]string {
3638
flagValues := map[string]string{
37-
projectIdFlag: testProjectId,
39+
globalflags.ProjectIdFlag: testProjectId,
40+
globalflags.RegionFlag: testRegion,
3841
}
3942
for _, mod := range mods {
4043
mod(flagValues)
@@ -47,6 +50,7 @@ func fixtureInputModel(mods ...func(model *inputModel)) *inputModel {
4750
GlobalFlagModel: &globalflags.GlobalFlagModel{
4851
Verbosity: globalflags.VerbosityDefault,
4952
ProjectId: testProjectId,
53+
Region: testRegion,
5054
},
5155
PublicIpId: testPublicIpId,
5256
}
@@ -57,7 +61,7 @@ func fixtureInputModel(mods ...func(model *inputModel)) *inputModel {
5761
}
5862

5963
func fixtureRequest(mods ...func(request *iaas.ApiDeletePublicIPRequest)) iaas.ApiDeletePublicIPRequest {
60-
request := testClient.DeletePublicIP(testCtx, testProjectId, testPublicIpId)
64+
request := testClient.DeletePublicIP(testCtx, testProjectId, testRegion, testPublicIpId)
6165
for _, mod := range mods {
6266
mod(&request)
6367
}
@@ -101,23 +105,23 @@ func TestParseInput(t *testing.T) {
101105
description: "project id missing",
102106
argValues: fixtureArgValues(),
103107
flagValues: fixtureFlagValues(func(flagValues map[string]string) {
104-
delete(flagValues, projectIdFlag)
108+
delete(flagValues, globalflags.ProjectIdFlag)
105109
}),
106110
isValid: false,
107111
},
108112
{
109113
description: "project id invalid 1",
110114
argValues: fixtureArgValues(),
111115
flagValues: fixtureFlagValues(func(flagValues map[string]string) {
112-
flagValues[projectIdFlag] = ""
116+
flagValues[globalflags.ProjectIdFlag] = ""
113117
}),
114118
isValid: false,
115119
},
116120
{
117121
description: "project id invalid 2",
118122
argValues: fixtureArgValues(),
119123
flagValues: fixtureFlagValues(func(flagValues map[string]string) {
120-
flagValues[projectIdFlag] = "invalid-uuid"
124+
flagValues[globalflags.ProjectIdFlag] = "invalid-uuid"
121125
}),
122126
isValid: false,
123127
},

internal/cmd/public-ip/describe/describe.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ func parseInput(p *print.Printer, cmd *cobra.Command, inputArgs []string) (*inpu
8888
}
8989

9090
func buildRequest(ctx context.Context, model *inputModel, apiClient *iaas.APIClient) iaas.ApiGetPublicIPRequest {
91-
return apiClient.GetPublicIP(ctx, model.ProjectId, model.PublicIpId)
91+
return apiClient.GetPublicIP(ctx, model.ProjectId, model.Region, model.PublicIpId)
9292
}
9393

9494
func outputResult(p *print.Printer, outputFormat string, publicIp iaas.PublicIp) error {

internal/cmd/public-ip/describe/describe_test.go

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,9 @@ import (
1515
"github.com/stackitcloud/stackit-sdk-go/services/iaas"
1616
)
1717

18-
var projectIdFlag = globalflags.ProjectIdFlag
18+
const (
19+
testRegion = "eu01"
20+
)
1921

2022
type testCtxKey struct{}
2123

@@ -36,7 +38,8 @@ func fixtureArgValues(mods ...func(argValues []string)) []string {
3638

3739
func fixtureFlagValues(mods ...func(flagValues map[string]string)) map[string]string {
3840
flagValues := map[string]string{
39-
projectIdFlag: testProjectId,
41+
globalflags.ProjectIdFlag: testProjectId,
42+
globalflags.RegionFlag: testRegion,
4043
}
4144
for _, mod := range mods {
4245
mod(flagValues)
@@ -49,6 +52,7 @@ func fixtureInputModel(mods ...func(model *inputModel)) *inputModel {
4952
GlobalFlagModel: &globalflags.GlobalFlagModel{
5053
ProjectId: testProjectId,
5154
Verbosity: globalflags.VerbosityDefault,
55+
Region: testRegion,
5256
},
5357
PublicIpId: testPublicIpId,
5458
}
@@ -59,7 +63,7 @@ func fixtureInputModel(mods ...func(model *inputModel)) *inputModel {
5963
}
6064

6165
func fixtureRequest(mods ...func(request *iaas.ApiGetPublicIPRequest)) iaas.ApiGetPublicIPRequest {
62-
request := testClient.GetPublicIP(testCtx, testProjectId, testPublicIpId)
66+
request := testClient.GetPublicIP(testCtx, testProjectId, testRegion, testPublicIpId)
6367
for _, mod := range mods {
6468
mod(&request)
6569
}
@@ -103,23 +107,23 @@ func TestParseInput(t *testing.T) {
103107
description: "project id missing",
104108
argValues: fixtureArgValues(),
105109
flagValues: fixtureFlagValues(func(flagValues map[string]string) {
106-
delete(flagValues, projectIdFlag)
110+
delete(flagValues, globalflags.ProjectIdFlag)
107111
}),
108112
isValid: false,
109113
},
110114
{
111115
description: "project id invalid 1",
112116
argValues: fixtureArgValues(),
113117
flagValues: fixtureFlagValues(func(flagValues map[string]string) {
114-
flagValues[projectIdFlag] = ""
118+
flagValues[globalflags.ProjectIdFlag] = ""
115119
}),
116120
isValid: false,
117121
},
118122
{
119123
description: "project id invalid 2",
120124
argValues: fixtureArgValues(),
121125
flagValues: fixtureFlagValues(func(flagValues map[string]string) {
122-
flagValues[projectIdFlag] = "invalid-uuid"
126+
flagValues[globalflags.ProjectIdFlag] = "invalid-uuid"
123127
}),
124128
isValid: false,
125129
},

internal/cmd/public-ip/disassociate/disassociate.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ func NewCmd(params *params.CmdParams) *cobra.Command {
5252
return err
5353
}
5454

55-
publicIpLabel, associatedResourceId, err := iaasUtils.GetPublicIP(ctx, apiClient, model.ProjectId, model.PublicIpId)
55+
publicIpLabel, associatedResourceId, err := iaasUtils.GetPublicIP(ctx, apiClient, model.ProjectId, model.Region, model.PublicIpId)
5656
if err != nil {
5757
params.Printer.Debug(print.ErrorLevel, "get public IP: %v", err)
5858
publicIpLabel = model.PublicIpId
@@ -100,7 +100,7 @@ func parseInput(p *print.Printer, cmd *cobra.Command, inputArgs []string) (*inpu
100100
}
101101

102102
func buildRequest(ctx context.Context, model *inputModel, apiClient *iaas.APIClient) iaas.ApiUpdatePublicIPRequest {
103-
req := apiClient.UpdatePublicIP(ctx, model.ProjectId, model.PublicIpId)
103+
req := apiClient.UpdatePublicIP(ctx, model.ProjectId, model.Region, model.PublicIpId)
104104

105105
payload := iaas.UpdatePublicIPPayload{
106106
NetworkInterface: iaas.NewNullableString(nil),

internal/cmd/public-ip/disassociate/disassociate_test.go

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,9 @@ import (
1414
"github.com/stackitcloud/stackit-sdk-go/services/iaas"
1515
)
1616

17-
var projectIdFlag = globalflags.ProjectIdFlag
17+
const (
18+
testRegion = "eu01"
19+
)
1820

1921
type testCtxKey struct{}
2022

@@ -36,7 +38,8 @@ func fixtureArgValues(mods ...func(argValues []string)) []string {
3638

3739
func fixtureFlagValues(mods ...func(flagValues map[string]string)) map[string]string {
3840
flagValues := map[string]string{
39-
projectIdFlag: testProjectId,
41+
globalflags.ProjectIdFlag: testProjectId,
42+
globalflags.RegionFlag: testRegion,
4043
}
4144
for _, mod := range mods {
4245
mod(flagValues)
@@ -49,6 +52,7 @@ func fixtureInputModel(mods ...func(model *inputModel)) *inputModel {
4952
GlobalFlagModel: &globalflags.GlobalFlagModel{
5053
ProjectId: testProjectId,
5154
Verbosity: globalflags.VerbosityDefault,
55+
Region: testRegion,
5256
},
5357
PublicIpId: testPublicIpId,
5458
}
@@ -59,7 +63,7 @@ func fixtureInputModel(mods ...func(model *inputModel)) *inputModel {
5963
}
6064

6165
func fixtureRequest(mods ...func(request *iaas.ApiUpdatePublicIPRequest)) iaas.ApiUpdatePublicIPRequest {
62-
request := testClient.UpdatePublicIP(testCtx, testProjectId, testPublicIpId)
66+
request := testClient.UpdatePublicIP(testCtx, testProjectId, testRegion, testPublicIpId)
6367
request = request.UpdatePublicIPPayload(fixturePayload())
6468
for _, mod := range mods {
6569
mod(&request)
@@ -102,23 +106,23 @@ func TestParseInput(t *testing.T) {
102106
description: "project id missing",
103107
argValues: fixtureArgValues(),
104108
flagValues: fixtureFlagValues(func(flagValues map[string]string) {
105-
delete(flagValues, projectIdFlag)
109+
delete(flagValues, globalflags.ProjectIdFlag)
106110
}),
107111
isValid: false,
108112
},
109113
{
110114
description: "project id invalid 1",
111115
argValues: fixtureArgValues(),
112116
flagValues: fixtureFlagValues(func(flagValues map[string]string) {
113-
flagValues[projectIdFlag] = ""
117+
flagValues[globalflags.ProjectIdFlag] = ""
114118
}),
115119
isValid: false,
116120
},
117121
{
118122
description: "project id invalid 2",
119123
argValues: fixtureArgValues(),
120124
flagValues: fixtureFlagValues(func(flagValues map[string]string) {
121-
flagValues[projectIdFlag] = "invalid-uuid"
125+
flagValues[globalflags.ProjectIdFlag] = "invalid-uuid"
122126
}),
123127
isValid: false,
124128
},

0 commit comments

Comments
 (0)