-
Notifications
You must be signed in to change notification settings - Fork 28
/
flags.go
68 lines (63 loc) · 2.21 KB
/
flags.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
// SPDX-License-Identifier: Apache-2.0
package secret
import (
"time"
"github.com/urfave/cli/v2"
)
// Flags represents all supported command line
// interface (CLI) flags for the secret.
//
// https://pkg.go.dev/github.com/urfave/cli?tab=doc#Flag
var Flags = []cli.Flag{
// Secret Flags
&cli.BoolFlag{
EnvVars: []string{"VELA_SECRET_VAULT", "SECRET_VAULT"},
FilePath: "/vela/secret/vault/driver",
Name: "secret.vault.driver",
Usage: "enables the vault secret driver",
},
&cli.StringFlag{
EnvVars: []string{"VELA_SECRET_VAULT_ADDR", "SECRET_VAULT_ADDR"},
FilePath: "/vela/secret/vault/addr",
Name: "secret.vault.addr",
Usage: "fully qualified url (<scheme>://<host>) for the vault system",
},
&cli.StringFlag{
EnvVars: []string{"VELA_SECRET_VAULT_AUTH_METHOD", "SECRET_VAULT_AUTH_METHOD"},
FilePath: "/vela/secret/vault/auth_method",
Name: "secret.vault.auth-method",
Usage: "authentication method used to obtain token from vault system",
},
&cli.StringFlag{
EnvVars: []string{"VELA_SECRET_VAULT_AWS_ROLE", "SECRET_VAULT_AWS_ROLE"},
FilePath: "/vela/secret/vault/aws_role",
Name: "secret.vault.aws-role",
Usage: "vault role used to connect to the auth/aws/login endpoint",
},
&cli.StringFlag{
EnvVars: []string{"VELA_SECRET_VAULT_PREFIX", "SECRET_VAULT_PREFIX"},
FilePath: "/vela/secret/vault/prefix",
Name: "secret.vault.prefix",
Usage: "prefix for k/v secrets in vault system e.g. secret/data/<prefix>/<path>",
},
&cli.DurationFlag{
EnvVars: []string{"VELA_SECRET_VAULT_RENEWAL", "SECRET_VAULT_RENEWAL"},
FilePath: "/vela/secret/vault/renewal",
Name: "secret.vault.renewal",
Usage: "frequency which the vault token should be renewed",
Value: 30 * time.Minute,
},
&cli.StringFlag{
EnvVars: []string{"VELA_SECRET_VAULT_TOKEN", "SECRET_VAULT_TOKEN"},
FilePath: "/vela/secret/vault/token",
Name: "secret.vault.token",
Usage: "token used to access vault system",
},
&cli.StringFlag{
EnvVars: []string{"VELA_SECRET_VAULT_VERSION", "SECRET_VAULT_VERSION"},
FilePath: "/vela/secret/vault/version",
Name: "secret.vault.version",
Usage: "version for the kv backend for the vault system",
Value: "2",
},
}