Skip to content

Commit 9bac9fd

Browse files
authored
feat: return raw result for secret access version (#3721)
1 parent 3c19944 commit 9bac9fd

File tree

1 file changed

+44
-0
lines changed

1 file changed

+44
-0
lines changed
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
package secret
2+
3+
import (
4+
"context"
5+
6+
"github.com/scaleway/scaleway-cli/v2/internal/core"
7+
secret "github.com/scaleway/scaleway-sdk-go/api/secret/v1beta1"
8+
)
9+
10+
func GetCommands() *core.Commands {
11+
cmds := GetGeneratedCommands()
12+
13+
cmds.MustFind("secret", "version", "create").Override(dataCreateVersion)
14+
cmds.MustFind("secret", "version", "access").Override(secretVersionAccessCommand)
15+
return cmds
16+
}
17+
18+
func dataCreateVersion(c *core.Command) *core.Command {
19+
*c.ArgSpecs.GetByName("data") = core.ArgSpec{
20+
Name: "data",
21+
Short: "Content of the secret version. Base64 is handled by the SDK",
22+
Required: true,
23+
CanLoadFile: true,
24+
}
25+
return c
26+
}
27+
28+
func secretVersionAccessCommand(c *core.Command) *core.Command {
29+
c.Run = func(ctx context.Context, args interface{}) (i interface{}, e error) {
30+
request := args.(*secret.AccessSecretVersionRequest)
31+
32+
client := core.ExtractClient(ctx)
33+
api := secret.NewAPI(client)
34+
res, err := api.AccessSecretVersion(request)
35+
36+
if err != nil {
37+
return nil, err
38+
}
39+
40+
return core.RawResult(res.Data), nil
41+
}
42+
43+
return c
44+
}

0 commit comments

Comments
 (0)