Skip to content

Commit a808ace

Browse files
chore(deps): bump github.com/stackitcloud/stackit-sdk-go/services/iaas from 1.14.1 to 1.14.5 (#1635)
* chore(deps): bump github.com/stackitcloud/stackit-sdk-go/services/iaas Bumps [github.com/stackitcloud/stackit-sdk-go/services/iaas](https://github.com/stackitcloud/stackit-sdk-go) from 1.14.1 to 1.14.5. - [Release notes](https://github.com/stackitcloud/stackit-sdk-go/releases) - [Changelog](https://github.com/stackitcloud/stackit-sdk-go/blob/main/CHANGELOG.md) - [Commits](stackitcloud/stackit-sdk-go@services/cdn/v1.14.1...services/iaas/v1.14.5) --- updated-dependencies: - dependency-name: github.com/stackitcloud/stackit-sdk-go/services/iaas dependency-version: 1.14.5 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> * fix(iaas): adapt to new sdk labels type * fix(iaas): use new() instead of utils.Ptr --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Carlo Goetz <carlo.goetz@inovex.de>
1 parent 9ac3d1c commit a808ace

6 files changed

Lines changed: 77 additions & 21 deletions

File tree

‎go.mod‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,13 +24,13 @@ require (
2424
github.com/stackitcloud/stackit-sdk-go/services/dns v0.23.1
2525
github.com/stackitcloud/stackit-sdk-go/services/edge v0.13.2
2626
github.com/stackitcloud/stackit-sdk-go/services/git v0.14.1
27-
github.com/stackitcloud/stackit-sdk-go/services/iaas v1.14.1
27+
github.com/stackitcloud/stackit-sdk-go/services/iaas v1.14.5
2828
github.com/stackitcloud/stackit-sdk-go/services/intake v0.11.2
2929
github.com/stackitcloud/stackit-sdk-go/services/logs v0.10.2
3030
github.com/stackitcloud/stackit-sdk-go/services/mongodbflex v1.12.2
3131
github.com/stackitcloud/stackit-sdk-go/services/opensearch v1.3.1
3232
github.com/stackitcloud/stackit-sdk-go/services/postgresflex v1.15.0
33-
github.com/stackitcloud/stackit-sdk-go/services/resourcemanager v0.24.2
33+
github.com/stackitcloud/stackit-sdk-go/services/resourcemanager v0.26.0
3434
github.com/stackitcloud/stackit-sdk-go/services/runcommand v1.10.2
3535
github.com/stackitcloud/stackit-sdk-go/services/secretsmanager v0.19.1
3636
github.com/stackitcloud/stackit-sdk-go/services/serverbackup v1.7.1

‎go.sum‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -626,8 +626,8 @@ github.com/stackitcloud/stackit-sdk-go/services/edge v0.13.2 h1:UDkXmgOAlP3y/u7F
626626
github.com/stackitcloud/stackit-sdk-go/services/edge v0.13.2/go.mod h1:hlUcPvOgH/CzZqH7u4SwV81qiismCVAtvw5pTAf6si4=
627627
github.com/stackitcloud/stackit-sdk-go/services/git v0.14.1 h1:7R5peSRer3Y83mfB6wcdCP0vhEjsq4myUdVhl24q6to=
628628
github.com/stackitcloud/stackit-sdk-go/services/git v0.14.1/go.mod h1:kz2pl17t9MNQx0+fNXg10ZAVfjmvOtsHB7VlAzu/Io8=
629-
github.com/stackitcloud/stackit-sdk-go/services/iaas v1.14.1 h1:P8XhOi8TLA7NbLHhxU8dCJjgQpha/65agos3pI59+vw=
630-
github.com/stackitcloud/stackit-sdk-go/services/iaas v1.14.1/go.mod h1:/QpOsaCOQjwGgQqG8y9xXqryp25AfkorPjInX9xIeOU=
629+
github.com/stackitcloud/stackit-sdk-go/services/iaas v1.14.5 h1:CVRo4/hCy6vLlh6LQjQikTDnh/0KF43nRhKsiicxyXc=
630+
github.com/stackitcloud/stackit-sdk-go/services/iaas v1.14.5/go.mod h1:oJmNZY04vvjrQI+y91ZZWOQiCAREcCldkh6cib+YtP0=
631631
github.com/stackitcloud/stackit-sdk-go/services/intake v0.11.2 h1:wC0J5fHffmbPLzsqjQ08P9Jb10/BbJUm45TSNfAm8jc=
632632
github.com/stackitcloud/stackit-sdk-go/services/intake v0.11.2/go.mod h1:WIgF8d0xz2dIf95k1lMIGCBoyDhr2/AFJFEdnWB8tTo=
633633
github.com/stackitcloud/stackit-sdk-go/services/kms v1.13.1 h1:iEPerniBpji6dGiB31p1WAUxgBf9VBIL9gKocfbBqW8=
@@ -654,8 +654,8 @@ github.com/stackitcloud/stackit-sdk-go/services/rabbitmq v1.3.1 h1:6t+EJTR9HOFZG
654654
github.com/stackitcloud/stackit-sdk-go/services/rabbitmq v1.3.1/go.mod h1:oGcpMIs2H/ldTQlTkYJUY4ZaVNi3MMRSMz0XpLDSKcU=
655655
github.com/stackitcloud/stackit-sdk-go/services/redis v1.4.1 h1:s3mXo6FGNEeMWqVPq7yaDgcOakEejRP7X9l7OaK7PEE=
656656
github.com/stackitcloud/stackit-sdk-go/services/redis v1.4.1/go.mod h1:6ihYZA22kityLgM0Pp7qROOomcZeUV0OsayOrd5vVe4=
657-
github.com/stackitcloud/stackit-sdk-go/services/resourcemanager v0.24.2 h1:4UxxJmCSCwV8q4bT4G+D1JH8F9Gm6BKaLGixX5DVcvI=
658-
github.com/stackitcloud/stackit-sdk-go/services/resourcemanager v0.24.2/go.mod h1:NEz3f+GV5G++BE9/MmZCsXJyCih7jtg0pZuSyG2sLEs=
657+
github.com/stackitcloud/stackit-sdk-go/services/resourcemanager v0.26.0 h1:TzmBTja200jx6An39UPYBZPvZvLFgk3g1S0XZ1vDeBI=
658+
github.com/stackitcloud/stackit-sdk-go/services/resourcemanager v0.26.0/go.mod h1:Y5EM8b9qe/+AKI2LJoFvI0PzkyHO5RiW8nQuQaaNaFA=
659659
github.com/stackitcloud/stackit-sdk-go/services/runcommand v1.10.2 h1:YpTj2lU0sKe7a1mBH9LW30wUijxZZ1z246a7V40zHDc=
660660
github.com/stackitcloud/stackit-sdk-go/services/runcommand v1.10.2/go.mod h1:KQLunYwad9IhSbnXuhkKAldVG9LNxCzIYHR8vMJlKQI=
661661
github.com/stackitcloud/stackit-sdk-go/services/secretsmanager v0.19.1 h1:Mym5vqa3YaF42LbqlVXDFYf/evsNU76l0wpUPGEu+0U=

‎internal/cmd/project/update/update.go‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ type inputModel struct {
3434
*globalflags.GlobalFlagModel
3535
ParentId *string
3636
Name *string
37-
Labels *map[string]string
37+
Labels *map[string]*string
3838
}
3939

4040
func NewCmd(params *types.CmdParams) *cobra.Command {
@@ -107,7 +107,7 @@ func parseInput(p *print.Printer, cmd *cobra.Command, _ []string) (*inputModel,
107107
return nil, &errors.ProjectIdError{}
108108
}
109109

110-
labels := flags.FlagToStringToStringPointer(p, cmd, labelFlag)
110+
labels := flags.FlagToStringToStringPointerPointer(p, cmd, labelFlag)
111111
parentId := flags.FlagToStringPointer(p, cmd, parentIdFlag)
112112
name := flags.FlagToStringPointer(p, cmd, nameFlag)
113113

@@ -126,10 +126,10 @@ func parseInput(p *print.Printer, cmd *cobra.Command, _ []string) (*inputModel,
126126
}
127127
}
128128

129-
if !labelValueRegex.MatchString(value) {
129+
if value == nil || !labelValueRegex.MatchString(*value) {
130130
return nil, &errors.FlagValidationError{
131131
Flag: labelFlag,
132-
Details: fmt.Sprintf("label value %s for key %s didn't match the required regex expression %s", value, key, labelValueRegex),
132+
Details: fmt.Sprintf("label value %v for key %s didn't match the required regex expression %s", value, key, labelValueRegex),
133133
}
134134
}
135135
}

‎internal/cmd/project/update/update_test.go‎

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

77
"github.com/stackitcloud/stackit-cli/internal/pkg/globalflags"
88
"github.com/stackitcloud/stackit-cli/internal/pkg/testutils"
9-
"github.com/stackitcloud/stackit-cli/internal/pkg/utils"
109

1110
"github.com/google/go-cmp/cmp"
1211
"github.com/google/go-cmp/cmp/cmpopts"
@@ -41,8 +40,8 @@ func fixtureInputModel(mods ...func(model *inputModel)) *inputModel {
4140
ProjectId: testProjectId,
4241
Verbosity: globalflags.VerbosityDefault,
4342
},
44-
ParentId: utils.Ptr(testParentId),
45-
Name: utils.Ptr(nameFlag),
43+
ParentId: new(testParentId),
44+
Name: new(nameFlag),
4645
}
4746
for _, mod := range mods {
4847
mod(model)
@@ -53,8 +52,8 @@ func fixtureInputModel(mods ...func(model *inputModel)) *inputModel {
5352
func fixtureRequest(mods ...func(request *resourcemanager.ApiPartialUpdateProjectRequest)) resourcemanager.ApiPartialUpdateProjectRequest {
5453
request := testClient.DefaultAPI.PartialUpdateProject(testCtx, testProjectId)
5554
request = request.PartialUpdateProjectPayload(resourcemanager.PartialUpdateProjectPayload{
56-
ContainerParentId: utils.Ptr(testParentId),
57-
Name: utils.Ptr(nameFlag),
55+
ContainerParentId: new(testParentId),
56+
Name: new(nameFlag),
5857
})
5958
for _, mod := range mods {
6059
mod(&request)
@@ -101,9 +100,9 @@ func TestParseInput(t *testing.T) {
101100
labelValues: []string{"key=value", "foo=bar"},
102101
expectedModel: fixtureInputModel(
103102
func(model *inputModel) {
104-
model.Labels = &map[string]string{
105-
"key": "value",
106-
"foo": "bar",
103+
model.Labels = &map[string]*string{
104+
"key": new("value"),
105+
"foo": new("bar"),
107106
}
108107
}),
109108
isValid: true,
@@ -114,9 +113,9 @@ func TestParseInput(t *testing.T) {
114113
labelValues: []string{"key=value,foo=bar"},
115114
expectedModel: fixtureInputModel(
116115
func(model *inputModel) {
117-
model.Labels = &map[string]string{
118-
"key": "value",
119-
"foo": "bar",
116+
model.Labels = &map[string]*string{
117+
"key": new("value"),
118+
"foo": new("bar"),
120119
}
121120
}),
122121
isValid: true,

‎internal/pkg/flags/flag_to_value.go‎

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,26 @@ func FlagToStringToStringPointer(p *print.Printer, cmd *cobra.Command, flag stri
7676
return nil
7777
}
7878

79+
// FlagToStringToStringPointerPointer returns a pointer to the flag's value as a map of string pointers.
80+
// Returns nil if the flag is not set, cannot be converted, or does not exist.
81+
func FlagToStringToStringPointerPointer(p *print.Printer, cmd *cobra.Command, flag string) *map[string]*string { //nolint:gocritic //convenient for setting the SDK payload
82+
value, err := cmd.Flags().GetStringToString(flag)
83+
if err != nil {
84+
p.Debug(print.ErrorLevel, "convert flag to string to string pointer pointer: %v", err)
85+
return nil
86+
}
87+
if !cmd.Flag(flag).Changed {
88+
return nil
89+
}
90+
91+
pointerValue := make(map[string]*string, len(value))
92+
for key, item := range value {
93+
item := item
94+
pointerValue[key] = &item
95+
}
96+
return &pointerValue
97+
}
98+
7999
func FlagToStringToAny(p *print.Printer, cmd *cobra.Command, flag string) map[string]any {
80100
value, err := cmd.Flags().GetStringToString(flag)
81101
r := make(map[string]any, len(value))

‎internal/pkg/flags/flag_to_value_test.go‎

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,43 @@ func TestFlagToStringToStringPointer(t *testing.T) {
7373
}
7474
}
7575

76+
func TestFlagToStringToStringPointerPointer(t *testing.T) {
77+
const flagName = "labels"
78+
79+
tests := []struct {
80+
name string
81+
flagValue *string
82+
want *map[string]*string
83+
}{
84+
{name: "flag unset"},
85+
{
86+
name: "flag set",
87+
flagValue: utils.Ptr("foo=bar,label1=value1"),
88+
want: &map[string]*string{
89+
"foo": utils.Ptr("bar"),
90+
"label1": utils.Ptr("value1"),
91+
},
92+
},
93+
}
94+
95+
for _, tt := range tests {
96+
t.Run(tt.name, func(t *testing.T) {
97+
params := testparams.NewTestParams()
98+
cmd := &cobra.Command{Use: "test"}
99+
cmd.Flags().StringToString(flagName, nil, "Labels")
100+
if tt.flagValue != nil {
101+
if err := cmd.Flags().Set(flagName, *tt.flagValue); err != nil {
102+
t.Fatal(err)
103+
}
104+
}
105+
106+
if got := FlagToStringToStringPointerPointer(params.Printer, cmd, flagName); !reflect.DeepEqual(got, tt.want) {
107+
t.Errorf("FlagToStringToStringPointerPointer() = %v, want %v", got, tt.want)
108+
}
109+
})
110+
}
111+
}
112+
76113
func TestFlagToStringArrayValue(t *testing.T) {
77114
const flagName = "geofencing"
78115
tests := []struct {

0 commit comments

Comments
 (0)