Skip to content

Commit de5e097

Browse files
authored
Merge branch 'main' into kms-beta
2 parents 2614575 + dd3c516 commit de5e097

File tree

10 files changed

+84
-71
lines changed

10 files changed

+84
-71
lines changed

.github/workflows/renovate.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ jobs:
1313
- name: Checkout
1414
uses: actions/checkout@v5
1515
- name: Self-hosted Renovate
16-
uses: renovatebot/github-action@v43.0.10
16+
uses: renovatebot/github-action@v43.0.11
1717
with:
1818
configurationFile: .github/renovate.json
1919
token: ${{ secrets.RENOVATE_TOKEN }}

.goreleaser.yaml

Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -48,25 +48,22 @@ builds:
4848
- cmd: spctl -a -t open --context context:primary-signature -v dist/{{ .ProjectName }}_{{ .Version }}_{{ .Os }}_{{ .Arch }}.dmg
4949
output: true
5050
# Completion files
51-
- cmd: mkdir -p dist/macos-builds_{{.Target}}/completions
52-
- cmd: sh -c './dist/macos-builds_{{.Target}}/{{.Name}} completion zsh > ./dist/macos-builds_{{.Target}}/completions/stackit.zsh'
53-
- cmd: sh -c './dist/macos-builds_{{.Target}}/{{.Name}} completion bash > ./dist/macos-builds_{{.Target}}/completions/stackit.bash'
54-
- cmd: sh -c './dist/macos-builds_{{.Target}}/{{.Name}} completion fish > ./dist/macos-builds_{{.Target}}/completions/stackit.fish'
51+
- cmd: mkdir -p dist/completions
52+
- cmd: sh -c 'go run main.go completion zsh > ./dist/completions/stackit.zsh'
53+
- cmd: sh -c 'go run main.go completion bash > ./dist/completions/stackit.bash'
54+
- cmd: sh -c 'go run main.go completion fish > ./dist/completions/stackit.fish'
5555

5656
archives:
57+
- id: windows-archives
58+
ids:
59+
- windows-builds
60+
formats: [ 'zip' ]
5761
- ids:
5862
- linux-builds
59-
- windows-builds
60-
formats: [ 'tar.gz' ]
61-
format_overrides:
62-
- goos: windows
63-
formats: [ 'zip' ]
64-
- id: macos-archives
65-
ids:
6663
- macos-builds
6764
formats: [ 'tar.gz' ]
6865
files:
69-
- src: ./dist/macos-builds_{{.Target}}/completions/*
66+
- src: ./dist/completions/*
7067
dst: completions
7168
- LICENSE.md
7269
- README.md

CONTRIBUTION.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,10 @@ Please remember to always add unit tests for `parseInput`, `buildRequest` (in `b
5959

6060
If the new command `bar` is the first command in the CLI using a STACKIT service `foo`, please refer to [Onboarding a new STACKIT service](./CONTRIBUTION.md/#onboarding-a-new-stackit-service).
6161

62+
You may also have to register the `bar` command as a new sub-command:
63+
64+
https://github.com/stackitcloud/stackit-cli/blob/a5438f4cac3a794cb95d04891a83252aa9ae1f1e/internal/cmd/root.go#L162-L195
65+
6266
#### Outputs, prints and debug logs
6367

6468
The CLI has 4 different verbosity levels:

go.mod

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ require (
1414
github.com/mattn/go-colorable v0.1.14
1515
github.com/spf13/cobra v1.10.1
1616
github.com/spf13/pflag v1.0.10
17-
github.com/spf13/viper v1.20.1
17+
github.com/spf13/viper v1.21.0
1818
github.com/stackitcloud/stackit-sdk-go/core v0.17.3
1919
github.com/stackitcloud/stackit-sdk-go/services/alb v0.6.1
2020
github.com/stackitcloud/stackit-sdk-go/services/authorization v0.8.1
@@ -29,9 +29,9 @@ require (
2929
github.com/stackitcloud/stackit-sdk-go/services/secretsmanager v0.13.1
3030
github.com/stackitcloud/stackit-sdk-go/services/serverbackup v1.3.2
3131
github.com/stackitcloud/stackit-sdk-go/services/serverupdate v1.2.1
32-
github.com/stackitcloud/stackit-sdk-go/services/serviceaccount v0.11.0
32+
github.com/stackitcloud/stackit-sdk-go/services/serviceaccount v0.11.1
3333
github.com/stackitcloud/stackit-sdk-go/services/serviceenablement v1.2.2
34-
github.com/stackitcloud/stackit-sdk-go/services/ske v1.3.0
34+
github.com/stackitcloud/stackit-sdk-go/services/ske v1.4.0
3535
github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex v1.3.1
3636
github.com/zalando/go-keyring v0.2.6
3737
golang.org/x/mod v0.27.0
@@ -102,7 +102,7 @@ require (
102102
github.com/go-toolsmith/astp v1.1.0 // indirect
103103
github.com/go-toolsmith/strparse v1.1.0 // indirect
104104
github.com/go-toolsmith/typep v1.1.0 // indirect
105-
github.com/go-viper/mapstructure/v2 v2.2.1 // indirect
105+
github.com/go-viper/mapstructure/v2 v2.4.0 // indirect
106106
github.com/go-xmlfmt/xmlfmt v1.1.3 // indirect
107107
github.com/gobwas/glob v0.2.3 // indirect
108108
github.com/gofrs/flock v0.12.1 // indirect
@@ -183,7 +183,7 @@ require (
183183
github.com/ssgreg/nlreturn/v2 v2.2.1 // indirect
184184
github.com/stbenjam/no-sprintf-host-port v0.2.0 // indirect
185185
github.com/stretchr/objx v0.5.2 // indirect
186-
github.com/stretchr/testify v1.10.0 // indirect
186+
github.com/stretchr/testify v1.11.1 // indirect
187187
github.com/tdakkota/asciicheck v0.4.1 // indirect
188188
github.com/tetafro/godot v1.5.1 // indirect
189189
github.com/timakin/bodyclose v0.0.0-20241222091800-1db5c5ca4d67 // indirect
@@ -205,6 +205,7 @@ require (
205205
go.uber.org/atomic v1.9.0 // indirect
206206
go.uber.org/automaxprocs v1.6.0 // indirect
207207
go.uber.org/zap v1.24.0 // indirect
208+
go.yaml.in/yaml/v3 v3.0.4 // indirect
208209
golang.org/x/exp/typeparams v0.0.0-20250210185358-939b2ce775ac // indirect
209210
golang.org/x/sync v0.16.0 // indirect
210211
golang.org/x/tools v0.36.0 // indirect
@@ -221,7 +222,7 @@ require (
221222
github.com/cpuguy83/go-md2man/v2 v2.0.6 // indirect
222223
github.com/danieljoos/wincred v1.2.2 // indirect
223224
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
224-
github.com/fsnotify/fsnotify v1.8.0 // indirect
225+
github.com/fsnotify/fsnotify v1.9.0 // indirect
225226
github.com/go-logr/logr v1.4.2 // indirect
226227
github.com/godbus/dbus/v5 v5.1.0 // indirect
227228
github.com/gogo/protobuf v1.3.2 // indirect
@@ -234,15 +235,15 @@ require (
234235
github.com/pelletier/go-toml/v2 v2.2.4 // indirect
235236
github.com/rivo/uniseg v0.4.7 // indirect
236237
github.com/russross/blackfriday/v2 v2.1.0 // indirect
237-
github.com/sagikazarmark/locafero v0.7.0 // indirect
238-
github.com/sourcegraph/conc v0.3.0 // indirect
239-
github.com/spf13/afero v1.14.0 // indirect
240-
github.com/spf13/cast v1.7.1 // indirect
241238
github.com/stackitcloud/stackit-sdk-go/services/kms v1.0.0
239+
github.com/sagikazarmark/locafero v0.11.0 // indirect
240+
github.com/sourcegraph/conc v0.3.1-0.20240121214520-5f936abd7ae8 // indirect
241+
github.com/spf13/afero v1.15.0 // indirect
242+
github.com/spf13/cast v1.10.0 // indirect
242243
github.com/stackitcloud/stackit-sdk-go/services/loadbalancer v1.5.1
243244
github.com/stackitcloud/stackit-sdk-go/services/logme v0.25.1
244245
github.com/stackitcloud/stackit-sdk-go/services/mariadb v0.25.1
245-
github.com/stackitcloud/stackit-sdk-go/services/objectstorage v1.3.1
246+
github.com/stackitcloud/stackit-sdk-go/services/objectstorage v1.4.0
246247
github.com/stackitcloud/stackit-sdk-go/services/observability v0.14.0
247248
github.com/stackitcloud/stackit-sdk-go/services/rabbitmq v0.25.1
248249
github.com/stackitcloud/stackit-sdk-go/services/redis v0.25.1

go.sum

Lines changed: 24 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -156,8 +156,8 @@ github.com/firefart/nonamedreturns v1.0.6 h1:vmiBcKV/3EqKY3ZiPxCINmpS431OcE1S47A
156156
github.com/firefart/nonamedreturns v1.0.6/go.mod h1:R8NisJnSIpvPWheCq0mNRXJok6D8h7fagJTF8EMEwCo=
157157
github.com/frankban/quicktest v1.14.6 h1:7Xjx+VpznH+oBnejlPUj8oUpdxnVs4f8XU8WnHkI4W8=
158158
github.com/frankban/quicktest v1.14.6/go.mod h1:4ptaffx2x8+WTWXmUCuVU6aPUX1/Mz7zb5vbUoiM6w0=
159-
github.com/fsnotify/fsnotify v1.8.0 h1:dAwr6QBTBZIkG8roQaJjGof0pp0EeF+tNV7YBP3F/8M=
160-
github.com/fsnotify/fsnotify v1.8.0/go.mod h1:8jBTzvmWwFyi3Pb8djgCCO5IBqzKJ/Jwo8TRcHyHii0=
159+
github.com/fsnotify/fsnotify v1.9.0 h1:2Ml+OJNzbYCTzsxtv8vKSFD9PbJjmhYF14k/jKC7S9k=
160+
github.com/fsnotify/fsnotify v1.9.0/go.mod h1:8jBTzvmWwFyi3Pb8djgCCO5IBqzKJ/Jwo8TRcHyHii0=
161161
github.com/fxamacker/cbor/v2 v2.7.0 h1:iM5WgngdRBanHcxugY4JySA0nk1wZorNOpTgCMedv5E=
162162
github.com/fxamacker/cbor/v2 v2.7.0/go.mod h1:pxXPTn3joSm21Gbwsv0w9OSA2y1HFR9qXEeXQVeNoDQ=
163163
github.com/fzipp/gocyclo v0.6.0 h1:lsblElZG7d3ALtGMx9fmxeTKZaLLpU8mET09yN4BBLo=
@@ -207,8 +207,8 @@ github.com/go-toolsmith/strparse v1.1.0 h1:GAioeZUK9TGxnLS+qfdqNbA4z0SSm5zVNtCQi
207207
github.com/go-toolsmith/strparse v1.1.0/go.mod h1:7ksGy58fsaQkGQlY8WVoBFNyEPMGuJin1rfoPS4lBSQ=
208208
github.com/go-toolsmith/typep v1.1.0 h1:fIRYDyF+JywLfqzyhdiHzRop/GQDxxNhLGQ6gFUNHus=
209209
github.com/go-toolsmith/typep v1.1.0/go.mod h1:fVIw+7zjdsMxDA3ITWnH1yOiw1rnTQKCsF/sk2H/qig=
210-
github.com/go-viper/mapstructure/v2 v2.2.1 h1:ZAaOCxANMuZx5RCeg0mBdEZk7DZasvvZIxtHqx8aGss=
211-
github.com/go-viper/mapstructure/v2 v2.2.1/go.mod h1:oJDH3BJKyqBA2TXFhDsKDGDTlndYOZ6rGS0BRZIxGhM=
210+
github.com/go-viper/mapstructure/v2 v2.4.0 h1:EBsztssimR/CONLSZZ04E8qAkxNYq4Qp9LvH92wZUgs=
211+
github.com/go-viper/mapstructure/v2 v2.4.0/go.mod h1:oJDH3BJKyqBA2TXFhDsKDGDTlndYOZ6rGS0BRZIxGhM=
212212
github.com/go-xmlfmt/xmlfmt v1.1.3 h1:t8Ey3Uy7jDSEisW2K3somuMKIpzktkWptA0iFCnRUWY=
213213
github.com/go-xmlfmt/xmlfmt v1.1.3/go.mod h1:aUCEOzzezBEjDBbFBoSiya/gduyIiWYRP6CnSFIV8AM=
214214
github.com/gobwas/glob v0.2.3 h1:A4xDbljILXROh+kObIiy5kIaPYD8e96x1tgBhUI5J+Y=
@@ -520,8 +520,8 @@ github.com/ryancurrah/gomodguard v1.4.1 h1:eWC8eUMNZ/wM/PWuZBv7JxxqT5fiIKSIyTvjb
520520
github.com/ryancurrah/gomodguard v1.4.1/go.mod h1:qnMJwV1hX9m+YJseXEBhd2s90+1Xn6x9dLz11ualI1I=
521521
github.com/ryanrolds/sqlclosecheck v0.5.1 h1:dibWW826u0P8jNLsLN+En7+RqWWTYrjCB9fJfSfdyCU=
522522
github.com/ryanrolds/sqlclosecheck v0.5.1/go.mod h1:2g3dUjoS6AL4huFdv6wn55WpLIDjY7ZgUR4J8HOO/XQ=
523-
github.com/sagikazarmark/locafero v0.7.0 h1:5MqpDsTGNDhY8sGp0Aowyf0qKsPrhewaLSsFaodPcyo=
524-
github.com/sagikazarmark/locafero v0.7.0/go.mod h1:2za3Cg5rMaTMoG/2Ulr9AwtFaIppKXTRYnozin4aB5k=
523+
github.com/sagikazarmark/locafero v0.11.0 h1:1iurJgmM9G3PA/I+wWYIOw/5SyBtxapeHDcg+AAIFXc=
524+
github.com/sagikazarmark/locafero v0.11.0/go.mod h1:nVIGvgyzw595SUSUE6tvCp3YYTeHs15MvlmU87WwIik=
525525
github.com/sanposhiho/wastedassign/v2 v2.1.0 h1:crurBF7fJKIORrV85u9UUpePDYGWnwvv3+A96WvwXT0=
526526
github.com/sanposhiho/wastedassign/v2 v2.1.0/go.mod h1:+oSmSC+9bQ+VUAxA66nBb0Z7N8CK7mscKTDYC6aIek4=
527527
github.com/santhosh-tekuri/jsonschema/v6 v6.0.1 h1:PKK9DyHxif4LZo+uQSgXNqs0jj5+xZwwfKHgph2lxBw=
@@ -545,22 +545,22 @@ github.com/sivchari/tenv v1.12.1 h1:+E0QzjktdnExv/wwsnnyk4oqZBUfuh89YMQT1cyuvSY=
545545
github.com/sivchari/tenv v1.12.1/go.mod h1:1LjSOUCc25snIr5n3DtGGrENhX3LuWefcplwVGC24mw=
546546
github.com/sonatard/noctx v0.1.0 h1:JjqOc2WN16ISWAjAk8M5ej0RfExEXtkEyExl2hLW+OM=
547547
github.com/sonatard/noctx v0.1.0/go.mod h1:0RvBxqY8D4j9cTTTWE8ylt2vqj2EPI8fHmrxHdsaZ2c=
548-
github.com/sourcegraph/conc v0.3.0 h1:OQTbbt6P72L20UqAkXXuLOj79LfEanQ+YQFNpLA9ySo=
549-
github.com/sourcegraph/conc v0.3.0/go.mod h1:Sdozi7LEKbFPqYX2/J+iBAM6HpqSLTASQIKqDmF7Mt0=
548+
github.com/sourcegraph/conc v0.3.1-0.20240121214520-5f936abd7ae8 h1:+jumHNA0Wrelhe64i8F6HNlS8pkoyMv5sreGx2Ry5Rw=
549+
github.com/sourcegraph/conc v0.3.1-0.20240121214520-5f936abd7ae8/go.mod h1:3n1Cwaq1E1/1lhQhtRK2ts/ZwZEhjcQeJQ1RuC6Q/8U=
550550
github.com/sourcegraph/go-diff v0.7.0 h1:9uLlrd5T46OXs5qpp8L/MTltk0zikUGi0sNNyCpA8G0=
551551
github.com/sourcegraph/go-diff v0.7.0/go.mod h1:iBszgVvyxdc8SFZ7gm69go2KDdt3ag071iBaWPF6cjs=
552-
github.com/spf13/afero v1.14.0 h1:9tH6MapGnn/j0eb0yIXiLjERO8RB6xIVZRDCX7PtqWA=
553-
github.com/spf13/afero v1.14.0/go.mod h1:acJQ8t0ohCGuMN3O+Pv0V0hgMxNYDlvdk+VTfyZmbYo=
554-
github.com/spf13/cast v1.7.1 h1:cuNEagBQEHWN1FnbGEjCXL2szYEXqfJPbP2HNUaca9Y=
555-
github.com/spf13/cast v1.7.1/go.mod h1:ancEpBxwJDODSW/UG4rDrAqiKolqNNh2DX3mk86cAdo=
552+
github.com/spf13/afero v1.15.0 h1:b/YBCLWAJdFWJTN9cLhiXXcD7mzKn9Dm86dNnfyQw1I=
553+
github.com/spf13/afero v1.15.0/go.mod h1:NC2ByUVxtQs4b3sIUphxK0NioZnmxgyCrfzeuq8lxMg=
554+
github.com/spf13/cast v1.10.0 h1:h2x0u2shc1QuLHfxi+cTJvs30+ZAHOGRic8uyGTDWxY=
555+
github.com/spf13/cast v1.10.0/go.mod h1:jNfB8QC9IA6ZuY2ZjDp0KtFO2LZZlg4S/7bzP6qqeHo=
556556
github.com/spf13/cobra v1.10.1 h1:lJeBwCfmrnXthfAupyUTzJ/J4Nc1RsHC/mSRU2dll/s=
557557
github.com/spf13/cobra v1.10.1/go.mod h1:7SmJGaTHFVBY0jW4NXGluQoLvhqFQM+6XSKD+P4XaB0=
558558
github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
559559
github.com/spf13/pflag v1.0.9/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
560560
github.com/spf13/pflag v1.0.10 h1:4EBh2KAYBwaONj6b2Ye1GiHfwjqyROoF4RwYO+vPwFk=
561561
github.com/spf13/pflag v1.0.10/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
562-
github.com/spf13/viper v1.20.1 h1:ZMi+z/lvLyPSCoNtFCpqjy0S4kPbirhpTMwl8BkW9X4=
563-
github.com/spf13/viper v1.20.1/go.mod h1:P9Mdzt1zoHIG8m2eZQinpiBjo6kCmZSKBClNNqjJvu4=
562+
github.com/spf13/viper v1.21.0 h1:x5S+0EU27Lbphp4UKm1C+1oQO+rKx36vfCoaVebLFSU=
563+
github.com/spf13/viper v1.21.0/go.mod h1:P0lhsswPGWD/1lZJ9ny3fYnVqxiegrlNrEmgLjbTCAY=
564564
github.com/ssgreg/nlreturn/v2 v2.2.1 h1:X4XDI7jstt3ySqGU86YGAURbxw3oTDPK9sPEi6YEwQ0=
565565
github.com/ssgreg/nlreturn/v2 v2.2.1/go.mod h1:E/iiPB78hV7Szg2YfRgyIrk1AD6JVMTRkkxBiELzh2I=
566566
github.com/stackitcloud/stackit-sdk-go/core v0.17.3 h1:GsZGmRRc/3GJLmCUnsZswirr5wfLRrwavbnL/renOqg=
@@ -585,8 +585,8 @@ github.com/stackitcloud/stackit-sdk-go/services/mariadb v0.25.1 h1:Db/ebOL2vbpIe
585585
github.com/stackitcloud/stackit-sdk-go/services/mariadb v0.25.1/go.mod h1:8jdN4v2euK3f9gfdzbRi8e4nBJ8g/Q5YF9aPB4M4fCQ=
586586
github.com/stackitcloud/stackit-sdk-go/services/mongodbflex v1.5.2 h1:BQ+qAkVS/aGHepE/+gVsvSg1sRkPOyIUI/jkCyUOrWg=
587587
github.com/stackitcloud/stackit-sdk-go/services/mongodbflex v1.5.2/go.mod h1:oc8Mpwl7O6EZwG0YxfhOzNCJwNQBWK5rFh764OtxoMY=
588-
github.com/stackitcloud/stackit-sdk-go/services/objectstorage v1.3.1 h1:4jsFLbDVEosYTgQz6lPds1E9KDOiHwjuhWqcG+lo5B4=
589-
github.com/stackitcloud/stackit-sdk-go/services/objectstorage v1.3.1/go.mod h1:j1SHAS5lN8F9b/iPUOfjAl9QAA9tOT7NKOiDEzcM2zc=
588+
github.com/stackitcloud/stackit-sdk-go/services/objectstorage v1.4.0 h1:g3yNDUc3JydAikezUrI9bQ4nuMJpVeAQ35jOFfFmq1U=
589+
github.com/stackitcloud/stackit-sdk-go/services/objectstorage v1.4.0/go.mod h1:foslkEiICdtHR3v0A/i/Rgo6EP9MMula9XNC9luNOgw=
590590
github.com/stackitcloud/stackit-sdk-go/services/observability v0.14.0 h1:oewwaYjABWbNqDkmSwIXmjDBK4a46+tnznyZSXh3Xk0=
591591
github.com/stackitcloud/stackit-sdk-go/services/observability v0.14.0/go.mod h1:tJEOi6L0le4yQZPGwalup/PZ13gqs1aCQDqlUs2cYW0=
592592
github.com/stackitcloud/stackit-sdk-go/services/opensearch v0.24.1 h1:50n87uZn0EvSP9hJGLqd3Wm2hfqbyh7BMGGCk7axgqA=
@@ -607,12 +607,12 @@ github.com/stackitcloud/stackit-sdk-go/services/serverbackup v1.3.2 h1:tfKC4Z6Ua
607607
github.com/stackitcloud/stackit-sdk-go/services/serverbackup v1.3.2/go.mod h1:wV7/BUV3BCLq5+E1bHXrKKt/eOPVdWgLArWLAq7rZ/U=
608608
github.com/stackitcloud/stackit-sdk-go/services/serverupdate v1.2.1 h1:hcHX2n5pUsOcv2PPPbSJph1fQ/I6P7g7781T1f1ycEI=
609609
github.com/stackitcloud/stackit-sdk-go/services/serverupdate v1.2.1/go.mod h1:jZwTg3wU4/UxgNJ7TKlFZ3dTIlnfvppnW8kJTc4UXy8=
610-
github.com/stackitcloud/stackit-sdk-go/services/serviceaccount v0.11.0 h1:u0PjbKDuIVOMm9hyxLeqSM51ExtJXJ+TdSJT5hDW6wk=
611-
github.com/stackitcloud/stackit-sdk-go/services/serviceaccount v0.11.0/go.mod h1:QCrAW/Rmf+styT25ke8cUV6hDHpdKNmAY14kkJ3+Fd8=
610+
github.com/stackitcloud/stackit-sdk-go/services/serviceaccount v0.11.1 h1:crKlHl7QVF97A8CTBK3PBtVpO9c/7qwFvRJi5UN/F7Y=
611+
github.com/stackitcloud/stackit-sdk-go/services/serviceaccount v0.11.1/go.mod h1:QCrAW/Rmf+styT25ke8cUV6hDHpdKNmAY14kkJ3+Fd8=
612612
github.com/stackitcloud/stackit-sdk-go/services/serviceenablement v1.2.2 h1:s2iag/Gc4tuQH7x5I0n4mQWVhpfl/cj+SVNAFAB5ck0=
613613
github.com/stackitcloud/stackit-sdk-go/services/serviceenablement v1.2.2/go.mod h1:DFEamKVoOjm/rjMwzfZK0Zg/hwsSkXOibdA4HcC6swk=
614-
github.com/stackitcloud/stackit-sdk-go/services/ske v1.3.0 h1:hPCpRcWEzwzGONZJsKH+j2TjN1LRTH7Tp/q0TyzmL5M=
615-
github.com/stackitcloud/stackit-sdk-go/services/ske v1.3.0/go.mod h1:jDYRbagjOwKEVsvkxdUErXIvvTOLw9WdBVjaXr5YOD8=
614+
github.com/stackitcloud/stackit-sdk-go/services/ske v1.4.0 h1:V6RFvybDeJvvmT3g7/BZodF0gozz3TEpahbpiTftbeY=
615+
github.com/stackitcloud/stackit-sdk-go/services/ske v1.4.0/go.mod h1:xRBgpJ8P5Nf1T5tD0tGAeNg1FNQzx5VF7qqOXt2Fp3s=
616616
github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex v1.3.1 h1:r5808lRhtY8l5anft/UwgJEaef1XsoYObmwd3FVai48=
617617
github.com/stackitcloud/stackit-sdk-go/services/sqlserverflex v1.3.1/go.mod h1:+LYy2pB+tpF0lkkmCf524wvv2Sa49REgEaNh7JGzN6Y=
618618
github.com/stbenjam/no-sprintf-host-port v0.2.0 h1:i8pxvGrt1+4G0czLr/WnmyH7zbZ8Bg8etvARQ1rpyl4=
@@ -631,8 +631,8 @@ github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/
631631
github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
632632
github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU=
633633
github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo=
634-
github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA=
635-
github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
634+
github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu7U=
635+
github.com/stretchr/testify v1.11.1/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U=
636636
github.com/subosito/gotenv v1.6.0 h1:9NlTDc1FTs4qu0DDq7AEtTPNw6SVm7uBMsUCUjABIf8=
637637
github.com/subosito/gotenv v1.6.0/go.mod h1:Dk4QP5c2W3ibzajGcXpNraDfq2IrhjMIvMSWPKKo0FU=
638638
github.com/tdakkota/asciicheck v0.4.1 h1:bm0tbcmi0jezRA2b5kg4ozmMuGAFotKI3RZfrhfovg8=
@@ -701,6 +701,8 @@ go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0=
701701
go.uber.org/multierr v1.11.0/go.mod h1:20+QtiLqy0Nd6FdQB9TLXag12DsQkrbs3htMFfDN80Y=
702702
go.uber.org/zap v1.24.0 h1:FiJd5l1UOLj0wCgbSE0rwwXHzEdAZS6hiiSnxJN/D60=
703703
go.uber.org/zap v1.24.0/go.mod h1:2kMP+WWQ8aoFoedH3T2sq6iJ2yDWpHbP0f6MQbS9Gkg=
704+
go.yaml.in/yaml/v3 v3.0.4 h1:tfq32ie2Jv2UxXFdLJdh3jXuOzWiL1fo0bu/FbuKpbc=
705+
go.yaml.in/yaml/v3 v3.0.4/go.mod h1:DhzuOOF2ATzADvBadXxruRBLzYTpT36CKvDb3+aBEFg=
704706
golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
705707
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
706708
golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=

internal/cmd/object-storage/credentials/create/create.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -162,8 +162,8 @@ func outputResult(p *print.Printer, outputFormat, credentialsGroupLabel string,
162162
return nil
163163
default:
164164
expireDate := "Never"
165-
if resp.Expires != nil && *resp.Expires != "" {
166-
expireDate = *resp.Expires
165+
if resp.Expires != nil && resp.Expires.IsSet() && *resp.Expires.Get() != "" {
166+
expireDate = *resp.Expires.Get()
167167
}
168168

169169
p.Outputf("Created credentials in group %q. Credentials ID: %s\n\n", credentialsGroupLabel, utils.PtrString(resp.KeyId))

internal/cmd/redis/credentials/list/list.go

Lines changed: 15 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -69,21 +69,21 @@ func NewCmd(params *params.CmdParams) *cobra.Command {
6969
return fmt.Errorf("list Redis credentials: %w", err)
7070
}
7171
credentials := *resp.CredentialsList
72+
73+
// Truncate output
74+
if model.Limit != nil && len(credentials) > int(*model.Limit) {
75+
credentials = credentials[:*model.Limit]
76+
}
77+
78+
instanceLabel := model.InstanceId
7279
if len(credentials) == 0 {
73-
instanceLabel, err := redisUtils.GetInstanceName(ctx, apiClient, model.ProjectId, model.InstanceId)
80+
instanceLabel, err = redisUtils.GetInstanceName(ctx, apiClient, model.ProjectId, model.InstanceId)
7481
if err != nil {
7582
params.Printer.Debug(print.ErrorLevel, "get instance name: %v", err)
76-
instanceLabel = model.InstanceId
7783
}
78-
params.Printer.Info("No credentials found for instance %q\n", instanceLabel)
79-
return nil
8084
}
8185

82-
// Truncate output
83-
if model.Limit != nil && len(credentials) > int(*model.Limit) {
84-
credentials = credentials[:*model.Limit]
85-
}
86-
return outputResult(params.Printer, model.OutputFormat, credentials)
86+
return outputResult(params.Printer, model.OutputFormat, instanceLabel, credentials)
8787
},
8888
}
8989
configureFlags(cmd)
@@ -135,7 +135,7 @@ func buildRequest(ctx context.Context, model *inputModel, apiClient *redis.APICl
135135
return req
136136
}
137137

138-
func outputResult(p *print.Printer, outputFormat string, credentials []redis.CredentialsListItem) error {
138+
func outputResult(p *print.Printer, outputFormat, instanceLabel string, credentials []redis.CredentialsListItem) error {
139139
switch outputFormat {
140140
case print.JSONOutputFormat:
141141
details, err := json.MarshalIndent(credentials, "", " ")
@@ -154,6 +154,11 @@ func outputResult(p *print.Printer, outputFormat string, credentials []redis.Cre
154154

155155
return nil
156156
default:
157+
if len(credentials) == 0 {
158+
p.Outputf("No credentials found for instance %q\n", instanceLabel)
159+
return nil
160+
}
161+
157162
table := tables.NewTable()
158163
table.SetHeader("ID")
159164
for i := range credentials {

internal/cmd/redis/credentials/list/list_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -238,7 +238,7 @@ func Test_outputResult(t *testing.T) {
238238
p.Cmd = NewCmd(&params.CmdParams{Printer: p})
239239
for _, tt := range tests {
240240
t.Run(tt.name, func(t *testing.T) {
241-
if err := outputResult(p, tt.args.outputFormat, tt.args.credentials); (err != nil) != tt.wantErr {
241+
if err := outputResult(p, tt.args.outputFormat, "dummy-instance-label", tt.args.credentials); (err != nil) != tt.wantErr {
242242
t.Errorf("outputResult() error = %v, wantErr %v", err, tt.wantErr)
243243
}
244244
})

0 commit comments

Comments
 (0)