Skip to content

Commit 12de8eb

Browse files
authored
fix(kms): use fixed wait handler for disableKeyVersion command (#1064)
1 parent 9f8ab6f commit 12de8eb

File tree

3 files changed

+15
-4
lines changed

3 files changed

+15
-4
lines changed

go.mod

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -242,7 +242,7 @@ require (
242242
github.com/sourcegraph/conc v0.3.1-0.20240121214520-5f936abd7ae8 // indirect
243243
github.com/spf13/afero v1.15.0 // indirect
244244
github.com/spf13/cast v1.10.0 // indirect
245-
github.com/stackitcloud/stackit-sdk-go/services/kms v1.0.0
245+
github.com/stackitcloud/stackit-sdk-go/services/kms v1.1.0
246246
github.com/stackitcloud/stackit-sdk-go/services/loadbalancer v1.6.0
247247
github.com/stackitcloud/stackit-sdk-go/services/logme v0.25.1
248248
github.com/stackitcloud/stackit-sdk-go/services/mariadb v0.25.1

go.sum

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -573,8 +573,8 @@ github.com/stackitcloud/stackit-sdk-go/services/git v0.9.0 h1:zuoJnsLnjxdQcQbs7g
573573
github.com/stackitcloud/stackit-sdk-go/services/git v0.9.0/go.mod h1:AXFfYBJZIW1o0W0zZEb/proQMhMsb3Nn5E1htS8NDPE=
574574
github.com/stackitcloud/stackit-sdk-go/services/iaas v1.1.0 h1:0NS+NTxr1emS5hg/f62y8H9YtsL1+0P4EVQ+CBOEzjY=
575575
github.com/stackitcloud/stackit-sdk-go/services/iaas v1.1.0/go.mod h1:cUYlmptRGD5gizrzxiOnseow4l/g5ZSMmoYbpfeGCI8=
576-
github.com/stackitcloud/stackit-sdk-go/services/kms v1.0.0 h1:zxoOv7Fu+FmdsvTKiKkbmLItrMKfL+QoVtz9ReEF30E=
577-
github.com/stackitcloud/stackit-sdk-go/services/kms v1.0.0/go.mod h1:KEPVoO21pC4bjy5l0nyhjUJ0+uVwVWb+k2TYrzJ8xYw=
576+
github.com/stackitcloud/stackit-sdk-go/services/kms v1.1.0 h1:bgMV+hi/530htdSMAyRBrltR7Czinb56HQBT36wnVMU=
577+
github.com/stackitcloud/stackit-sdk-go/services/kms v1.1.0/go.mod h1:QswbIN9TUYELIwkjO+Bu8Nk/FGcd3kZYDlf2n0PdFAk=
578578
github.com/stackitcloud/stackit-sdk-go/services/loadbalancer v1.6.0 h1:q33ZaCBVEBUsnMDxYyuJKtJvGcE5nKgvuPed3s8zXNI=
579579
github.com/stackitcloud/stackit-sdk-go/services/loadbalancer v1.6.0/go.mod h1:20QOZ3rBC9wTGgzXzLz9M6YheX0VaxWE0/JI+s8On7k=
580580
github.com/stackitcloud/stackit-sdk-go/services/logme v0.25.1 h1:hv5WrRU9rN6Jx4OwdOGJRyaQrfA9p1tzEoQK6/CDyoA=

internal/cmd/beta/kms/version/disable/disable.go

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,10 @@ import (
1616
"github.com/stackitcloud/stackit-cli/internal/pkg/globalflags"
1717
"github.com/stackitcloud/stackit-cli/internal/pkg/print"
1818
"github.com/stackitcloud/stackit-cli/internal/pkg/services/kms/client"
19+
"github.com/stackitcloud/stackit-cli/internal/pkg/spinner"
1920
"github.com/stackitcloud/stackit-cli/internal/pkg/utils"
2021
"github.com/stackitcloud/stackit-sdk-go/services/kms"
22+
"github.com/stackitcloud/stackit-sdk-go/services/kms/wait"
2123
)
2224

2325
const (
@@ -67,7 +69,16 @@ func NewCmd(params *params.CmdParams) *cobra.Command {
6769
return fmt.Errorf("disable key version: %w", err)
6870
}
6971

70-
// kms v1.0.0 has a waiter, but it get's stuck even though the disable api call was already successfully completed.
72+
// Wait for async operation, if async mode not enabled
73+
if !model.Async {
74+
s := spinner.New(params.Printer)
75+
s.Start("Disabling key version")
76+
_, err = wait.DisableKeyVersionWaitHandler(ctx, apiClient, model.ProjectId, model.Region, model.KeyRingId, model.KeyId, model.VersionNumber).WaitWithContext(ctx)
77+
if err != nil {
78+
return fmt.Errorf("wait for key version to be disabled: %w", err)
79+
}
80+
s.Stop()
81+
}
7182

7283
// Get the key version in its state afterwards
7384
resp, err := apiClient.GetVersionExecute(ctx, model.ProjectId, model.Region, model.KeyRingId, model.KeyId, model.VersionNumber)

0 commit comments

Comments
 (0)