Documentation ¶
Overview ¶
Package secret provides the defined secret CLI commands for Vela.
Usage:
import "github.com/go-vela/cli/command/secret"
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var CommandAdd = &cli.Command{ Name: "secret", Description: "Use this command to create a secret.", Usage: "Add a new secret from the provided configuration", Action: add, Flags: []cli.Flag{ &cli.StringFlag{ EnvVars: []string{"VELA_ORG", "SECRET_ORG"}, Name: internal.FlagOrg, Aliases: []string{"o"}, Usage: "provide the organization for the secret", }, &cli.StringFlag{ EnvVars: []string{"VELA_REPO", "SECRET_REPO"}, Name: internal.FlagRepo, Aliases: []string{"r"}, Usage: "provide the repository for the secret", }, &cli.StringFlag{ EnvVars: []string{"VELA_ENGINE", "SECRET_ENGINE"}, Name: internal.FlagSecretEngine, Aliases: []string{"e"}, Usage: "provide the engine that stores the secret", Value: constants.DriverNative, }, &cli.StringFlag{ EnvVars: []string{"VELA_TYPE", "SECRET_TYPE"}, Name: internal.FlagSecretType, Aliases: []string{"ty"}, Usage: "provide the type of secret being stored", Value: constants.SecretRepo, }, &cli.StringFlag{ EnvVars: []string{"VELA_TEAM", "SECRET_TEAM"}, Name: "team", Aliases: []string{"t"}, Usage: "provide the team for the secret", }, &cli.StringFlag{ EnvVars: []string{"VELA_NAME", "SECRET_NAME"}, Name: "name", Aliases: []string{"n"}, Usage: "provide the name of the secret", }, &cli.StringFlag{ EnvVars: []string{"VELA_VALUE", "SECRET_VALUE"}, Name: "value", Aliases: []string{"v"}, Usage: "provide the value for the secret", }, &cli.StringSliceFlag{ EnvVars: []string{"VELA_IMAGES", "SECRET_IMAGES"}, Name: "image", Aliases: []string{"i"}, Usage: "Provide the image(s) that can access this secret", }, &cli.StringSliceFlag{ EnvVars: []string{"VELA_EVENTS", "SECRET_EVENTS"}, Name: "event", Aliases: []string{"ev"}, Usage: "provide the event(s) that can access this secret", Value: cli.NewStringSlice( constants.EventDeploy, constants.EventPush, constants.EventTag, ), }, &cli.StringFlag{ EnvVars: []string{"VELA_COMMAND", "SECRET_COMMAND"}, Name: "commands", Aliases: []string{"c"}, Usage: "enable a secret to be used for a step with commands", Value: "true", }, &cli.StringFlag{ EnvVars: []string{"VELA_FILE", "SECRET_FILE"}, Name: "file", Aliases: []string{"f"}, Usage: "provide a file to add the secret(s)", }, &cli.StringFlag{ EnvVars: []string{"VELA_OUTPUT", "SECRET_OUTPUT"}, Name: internal.FlagOutput, Aliases: []string{"op"}, Usage: "format the output in json, spew or yaml", }, }, CustomHelpTemplate: fmt.Sprintf(`%s EXAMPLES: 1. Add a repository secret. $ {{.HelpName}} --secret.engine native --secret.type repo --org MyOrg --repo MyRepo --name foo --value bar 2. Add an organization secret. $ {{.HelpName}} --secret.engine native --secret.type org --org MyOrg --name foo --value bar 3. Add a shared secret. $ {{.HelpName}} --secret.engine native --secret.type shared --org MyOrg --team octokitties --name foo --value bar 4. Add a repository secret with all event types enabled. $ {{.HelpName}} --secret.engine native --secret.type repo --org MyOrg --repo MyRepo --name foo --value bar --event comment --event deployment --event pull_request --event push --event tag 5. Add a repository secret with an image whitelist. $ {{.HelpName}} --secret.engine native --secret.type repo --org MyOrg --repo MyRepo --name foo --value bar --image alpine --image golang:* --image postgres:latest 6. Add a secret with value from a file. $ {{.HelpName}} --secret.engine native --secret.type repo --org MyOrg --repo MyRepo --name foo --value @secret.txt 7. Add a repository secret with json output. $ {{.HelpName}} --secret.engine native --secret.type repo --org MyOrg --repo MyRepo --name foo --value bar --output json 8. Add a secret or secrets from a file. $ {{.HelpName}} --file secret.yml 9. Add a secret when config or environment variables are set. $ {{.HelpName}} --org MyOrg --repo MyRepo --name foo --value bar DOCUMENTATION: https://go-vela.github.io/docs/reference/cli/secret/add/ `, cli.CommandHelpTemplate), }
CommandAdd defines the command for creating a secret.
View Source
var CommandGet = &cli.Command{ Name: "secret", Aliases: []string{"secrets"}, Description: "Use this command to get a list of secrets.", Usage: "Display a list of secrets", Action: get, Flags: []cli.Flag{ &cli.StringFlag{ EnvVars: []string{"VELA_ORG", "SECRET_ORG"}, Name: internal.FlagOrg, Aliases: []string{"o"}, Usage: "provide the organization for the secret", }, &cli.StringFlag{ EnvVars: []string{"VELA_REPO", "SECRET_REPO"}, Name: internal.FlagRepo, Aliases: []string{"r"}, Usage: "provide the repository for the secret", }, &cli.StringFlag{ EnvVars: []string{"VELA_ENGINE", "SECRET_ENGINE"}, Name: internal.FlagSecretEngine, Aliases: []string{"e"}, Usage: "provide the engine that stores the secret", Value: constants.DriverNative, }, &cli.StringFlag{ EnvVars: []string{"VELA_TYPE", "SECRET_TYPE"}, Name: internal.FlagSecretType, Aliases: []string{"ty"}, Usage: "provide the type of secret being stored", Value: constants.SecretRepo, }, &cli.StringFlag{ EnvVars: []string{"VELA_TEAM", "SECRET_TEAM"}, Name: "team", Aliases: []string{"t"}, Usage: "provide the team for the secret", }, &cli.StringFlag{ EnvVars: []string{"VELA_OUTPUT", "SECRET_OUTPUT"}, Name: internal.FlagOutput, Aliases: []string{"op"}, Usage: "format the output in json, spew, wide or yaml", }, &cli.IntFlag{ EnvVars: []string{"VELA_PAGE", "SECRET_PAGE"}, Name: internal.FlagPage, Aliases: []string{"p"}, Usage: "print a specific page of secrets", Value: 1, }, &cli.IntFlag{ EnvVars: []string{"VELA_PER_PAGE", "SECRET_PER_PAGE"}, Name: internal.FlagPerPage, Aliases: []string{"pp"}, Usage: "number of secrets to print per page", Value: 10, }, }, CustomHelpTemplate: fmt.Sprintf(`%s EXAMPLES: 1. Get repository secret details. $ {{.HelpName}} --secret.engine native --secret.type repo --org MyOrg --repo MyRepo 2. Get organization secret details. $ {{.HelpName}} --secret.engine native --secret.type org --org MyOrg 3. Get shared secret details. $ {{.HelpName}} --secret.engine native --secret.type shared --org MyOrg --team octokitties 4. Get repository secret details with json output. $ {{.HelpName}} --secret.engine native --secret.type repo --org MyOrg --repo MyRepo --output json 5. Get secret details when config or environment variables are set. $ {{.HelpName}} --org MyOrg --repo MyRepo DOCUMENTATION: https://go-vela.github.io/docs/reference/cli/secret/get/ `, cli.CommandHelpTemplate), }
CommandGet defines the command for inspecting a secret.
View Source
var CommandRemove = &cli.Command{ Name: "secret", Description: "Use this command to remove a secret.", Usage: "Remove details of the provided secret", Action: remove, Flags: []cli.Flag{ &cli.StringFlag{ EnvVars: []string{"VELA_ORG", "SECRET_ORG"}, Name: internal.FlagOrg, Aliases: []string{"o"}, Usage: "provide the organization for the secret", }, &cli.StringFlag{ EnvVars: []string{"VELA_REPO", "SECRET_REPO"}, Name: internal.FlagRepo, Aliases: []string{"r"}, Usage: "provide the repository for the secret", }, &cli.StringFlag{ EnvVars: []string{"VELA_ENGINE", "SECRET_ENGINE"}, Name: internal.FlagSecretEngine, Aliases: []string{"e"}, Usage: "provide the engine that stores the secret", Value: constants.DriverNative, }, &cli.StringFlag{ EnvVars: []string{"VELA_TYPE", "SECRET_TYPE"}, Name: internal.FlagSecretType, Aliases: []string{"ty"}, Usage: "provide the type of secret being stored", Value: constants.SecretRepo, }, &cli.StringFlag{ EnvVars: []string{"VELA_TEAM", "SECRET_TEAM"}, Name: "team", Aliases: []string{"t"}, Usage: "provide the team for the secret", }, &cli.StringFlag{ EnvVars: []string{"VELA_NAME", "SECRET_NAME"}, Name: "name", Aliases: []string{"n"}, Usage: "provide the name of the secret", }, &cli.StringFlag{ EnvVars: []string{"VELA_OUTPUT", "SECRET_OUTPUT"}, Name: internal.FlagOutput, Aliases: []string{"op"}, Usage: "format the output in json, spew or yaml", }, }, CustomHelpTemplate: fmt.Sprintf(`%s EXAMPLES: 1. Remove repository secret details. $ {{.HelpName}} --secret.engine native --secret.type repo --org MyOrg --repo MyRepo --name foo 2. Remove organization secret details. $ {{.HelpName}} --secret.engine native --secret.type org --org MyOrg --name foo 3. Remove shared secret details. $ {{.HelpName}} --secret.engine native --secret.type shared --org MyOrg --team octokitties --name foo 4. Remove repository secret details with json output. $ {{.HelpName}} --secret.engine native --secret.type repo --org MyOrg --repo MyRepo --name foo --output json 5. Remove secret details when config or environment variables are set. $ {{.HelpName}} --org MyOrg --repo MyRepo --name foo DOCUMENTATION: https://go-vela.github.io/docs/reference/cli/secret/remove/ `, cli.CommandHelpTemplate), }
CommandRemove defines the command for inspecting a secret.
View Source
var CommandUpdate = &cli.Command{ Name: "secret", Description: "Use this command to update a secret.", Usage: "Update details of the provided secret", Action: update, Flags: []cli.Flag{ &cli.StringFlag{ EnvVars: []string{"VELA_ORG", "SECRET_ORG"}, Name: internal.FlagOrg, Aliases: []string{"o"}, Usage: "provide the organization for the secret", }, &cli.StringFlag{ EnvVars: []string{"VELA_REPO", "SECRET_REPO"}, Name: internal.FlagRepo, Aliases: []string{"r"}, Usage: "provide the repository for the secret", }, &cli.StringFlag{ EnvVars: []string{"VELA_ENGINE", "SECRET_ENGINE"}, Name: internal.FlagSecretEngine, Aliases: []string{"e"}, Usage: "provide the engine that stores the secret", Value: constants.DriverNative, }, &cli.StringFlag{ EnvVars: []string{"VELA_TYPE", "SECRET_TYPE"}, Name: internal.FlagSecretType, Aliases: []string{"ty"}, Usage: "provide the type of secret being stored", Value: constants.SecretRepo, }, &cli.StringFlag{ EnvVars: []string{"VELA_TEAM", "SECRET_TEAM"}, Name: "team", Aliases: []string{"t"}, Usage: "provide the team for the secret", }, &cli.StringFlag{ EnvVars: []string{"VELA_NAME", "SECRET_NAME"}, Name: "name", Aliases: []string{"n"}, Usage: "provide the name of the secret", }, &cli.StringFlag{ EnvVars: []string{"VELA_VALUE", "SECRET_VALUE"}, Name: "value", Aliases: []string{"v"}, Usage: "provide the value for the secret", }, &cli.StringSliceFlag{ EnvVars: []string{"VELA_IMAGES", "SECRET_IMAGES"}, Name: "image", Aliases: []string{"i"}, Usage: "provide the image(s) that can access this secret", }, &cli.StringSliceFlag{ EnvVars: []string{"VELA_EVENTS", "SECRET_EVENTS"}, Name: "event", Aliases: []string{"ev"}, Usage: "provide the event(s) that can access this secret", }, &cli.StringFlag{ EnvVars: []string{"VELA_COMMAND", "SECRET_COMMAND"}, Name: "commands", Aliases: []string{"c"}, Usage: "enable a secret to be used for a step with commands", Value: "true", }, &cli.StringFlag{ EnvVars: []string{"VELA_FILE", "SECRET_FILE"}, Name: "file", Aliases: []string{"f"}, Usage: "provide a file to update the secret(s)", }, &cli.StringFlag{ EnvVars: []string{"VELA_OUTPUT", "SECRET_OUTPUT"}, Name: internal.FlagOutput, Aliases: []string{"op"}, Usage: "Print the output in default, yaml or json format", }, }, CustomHelpTemplate: fmt.Sprintf(`%s EXAMPLES: 1. Update a repository secret. $ {{.HelpName}} --secret.engine native --secret.type repo --org MyOrg --repo MyRepo --name foo --value bar 2. Update an organization secret. $ {{.HelpName}} --secret.engine native --secret.type org --org MyOrg --name foo --value bar 3. Update a shared secret. $ {{.HelpName}} --secret.engine native --secret.type shared --org MyOrg --team octokitties --name foo --value bar 4. Update a repository secret with all event types enabled. $ {{.HelpName}} --secret.engine native --secret.type repo --org MyOrg --repo MyRepo --name foo --event comment --event deployment --event pull_request --event push --event tag 5. Update a repository secret with an image whitelist. $ {{.HelpName}} --secret.engine native --secret.type repo --org MyOrg --repo MyRepo --name foo --image alpine --image golang:* --image postgres:latest 6. Update a secret with value from a file. $ {{.HelpName}} --secret.engine native --secret.type repo --org MyOrg --repo MyRepo --name foo --value @secret.txt 7. Update a repository secret with json output. $ {{.HelpName}} --secret.engine native --secret.type repo --org MyOrg --repo MyRepo --name foo --value bar --output json 8. Update a secret or secrets from a file. $ {{.HelpName}} --file secret.yml 9. Update a secret when config or environment variables are set. $ {{.HelpName}} --org MyOrg --repo MyRepo --name foo --value bar DOCUMENTATION: https://go-vela.github.io/docs/reference/cli/secret/update/ `, cli.CommandHelpTemplate), }
CommandUpdate defines the command for updating a secret.
View Source
var CommandView = &cli.Command{ Name: "secret", Description: "Use this command to view a secret.", Usage: "View details of the provided secret", Action: view, Flags: []cli.Flag{ &cli.StringFlag{ EnvVars: []string{"VELA_ORG", "SECRET_ORG"}, Name: internal.FlagOrg, Aliases: []string{"o"}, Usage: "provide the organization for the secret", }, &cli.StringFlag{ EnvVars: []string{"VELA_REPO", "SECRET_REPO"}, Name: internal.FlagRepo, Aliases: []string{"r"}, Usage: "provide the repository for the secret", }, &cli.StringFlag{ EnvVars: []string{"VELA_ENGINE", "SECRET_ENGINE"}, Name: internal.FlagSecretEngine, Aliases: []string{"e"}, Usage: "provide the engine that stores the secret", Value: constants.DriverNative, }, &cli.StringFlag{ EnvVars: []string{"VELA_TYPE", "SECRET_TYPE"}, Name: internal.FlagSecretType, Aliases: []string{"ty"}, Usage: "provide the type of secret being stored", Value: constants.SecretRepo, }, &cli.StringFlag{ EnvVars: []string{"VELA_TEAM", "SECRET_TEAM"}, Name: "team", Aliases: []string{"t"}, Usage: "provide the team for the secret", }, &cli.StringFlag{ EnvVars: []string{"VELA_NAME", "SECRET_NAME"}, Name: "name", Aliases: []string{"n"}, Usage: "provide the name of the secret", }, &cli.StringFlag{ EnvVars: []string{"VELA_OUTPUT", "SECRET_OUTPUT"}, Name: internal.FlagOutput, Aliases: []string{"op"}, Usage: "format the output in json, spew or yaml", }, }, CustomHelpTemplate: fmt.Sprintf(`%s EXAMPLES: 1. View repository secret details. $ {{.HelpName}} --secret.engine native --secret.type repo --org MyOrg --repo MyRepo --name foo 2. View organization secret details. $ {{.HelpName}} --secret.engine native --secret.type org --org MyOrg --name foo 3. View shared secret details. $ {{.HelpName}} --secret.engine native --secret.type shared --org MyOrg --team octokitties --name foo 4. View repository secret details with json output. $ {{.HelpName}} --secret.engine native --secret.type repo --org MyOrg --repo MyRepo --name foo --output json 5. View secret details when config or environment variables are set. $ {{.HelpName}} --org MyOrg --repo MyRepo --name foo DOCUMENTATION: https://go-vela.github.io/docs/reference/cli/secret/view/ `, cli.CommandHelpTemplate), }
CommandView defines the command for inspecting a secret.
Functions ¶
This section is empty.
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.