diff --git a/internal/cmd/secrets.go b/internal/cmd/secrets.go index f453c3e..67c15b1 100644 --- a/internal/cmd/secrets.go +++ b/internal/cmd/secrets.go @@ -13,9 +13,7 @@ import ( "aws-mgmt/pkg/client" ) -const secretsDesc = `View secrets from AWS Secrets Manager. - -` +const secretsDesc = `View secrets from AWS Secrets Manager.` var SecretsApp = &cli.App{ Name: "secrets", @@ -26,20 +24,7 @@ var SecretsApp = &cli.App{ ArgsUsage: "[secret]", Action: secretsFunc, Description: secretsDesc, - Flags: []cli.Flag{ - &cli.BoolFlag{ - Name: "totp", - Usage: "Generate a MFA token based on the secret value", - }, - &cli.StringSliceFlag{ - Name: "tags", - Usage: "Tags in the format key=value", - }, - &cli.BoolFlag{ - Name: "sh", - Usage: "Print the equivalent AWS CLI / shell command(s)", - }, - }, + Flags: flags, } var SecretsCommand = &cli.Command{ @@ -51,15 +36,21 @@ var SecretsCommand = &cli.Command{ ArgsUsage: "[secret]", Action: secretsFunc, Description: secretsDesc, - Flags: []cli.Flag{ - &cli.BoolFlag{ - Name: "totp", - Usage: "Return a MFA token", - }, - &cli.StringSliceFlag{ - Name: "tags", - Usage: "Tags in the format key=value", - }, + Flags: flags, +} + +var flags = []cli.Flag{ + &cli.BoolFlag{ + Name: "sh", + Usage: "Print the equivalent AWS CLI / shell command(s) to stderr", + }, + &cli.StringSliceFlag{ + Name: "tags", + Usage: "Specify tags to filter secrets, like --tags type=totp", + }, + &cli.BoolFlag{ + Name: "totp", + Usage: "Generate a MFA token based on the secret value", }, } @@ -113,15 +104,13 @@ func secretsFunc(c *cli.Context) error { } else { // print the aws cli equivalent command to output this secret to stderr if c.Bool("sh") { - fmt.Fprintln(os.Stderr, fmt.Sprintf("aws secretsmanager get-secret-value --secret-id %s --query SecretString --output text --no-cli-pager",secret)) + fmt.Fprintln(os.Stderr, fmt.Sprintf("aws secretsmanager get-secret-value --secret-id %s --query SecretString --output text --no-cli-pager", secret)) } fmt.Println(secretValue) } return nil } - - func parseTags(rawTags []string) map[string]string { tags := make(map[string]string) for _, tag := range rawTags {