Hyphens and consistency

I see that all the command flags in vlt have two hyphens.
This is not in line with the rest of the products where we only have one hyphen.

vlt

$ vlt secrets get username -plaintext
Usage: vlt secrets get [options] secret_name

  Retrieves secret information with a given name.

Options:

  --organization string, -o string     HCP Organization that the App is in
  --project string, -p string          HCP Project that the App is in
  --app-name string, -a string         The App that the secret is in
  --format string, -f string           The output format you would like (json)
  --plaintext                          Displays the secret's value in plain text
  --unredacted                         Displays a non-redacted base64 encoded version of the secret's value

vault

$ vault kv get -help
Usage: vault kv get [options] KEY
(..)
  -address=<string>
      Address of the Vault server. The default is https://127.0.0.1:8200. This
      can also be specified via the VAULT_ADDR environment variable.

  -agent-address=<string>
      Address of the Agent. This can also be specified via the
      VAULT_AGENT_ADDR environment variable.

  -ca-cert=<string>
      Path on the local disk to a single PEM-encoded CA certificate to verify
      the Vault server's SSL certificate. This takes precedence over -ca-path.
      This can also be specified via the VAULT_CACERT environment variable.
(..)

consul

$ consul catalog services -help
Usage: consul catalog services [options]

(..)
  -namespace=<default>
     Specifies the namespace to query. If not provided, the namespace
     will be inferred from the request's ACL token, or will default
     to the `default` namespace. Namespaces are a Consul Enterprise
     feature.

  -node=<id or name>
     Node `id or name` for which to list services.

  -tags
     Display each service's tags as a comma-separated list beside each
     service entry.
(..)

nomad

$ nomad job run -help
Usage: nomad job run [options] <path>
Alias: nomad run
(..)
  -address=<addr>
    The address of the Nomad server.
    Overrides the NOMAD_ADDR environment variable if set.
    Default = http://127.0.0.1:4646

  -region=<region>
    The region of the Nomad servers to forward commands to.
    Overrides the NOMAD_REGION environment variable if set.
    Defaults to the Agent's local region.

  -namespace=<namespace>
    The target namespace for queries and actions bound to a namespace.
    Overrides the NOMAD_NAMESPACE environment variable if set.
    If set to '*', subcommands which support this functionality query
    all namespaces authorized to user.
    Defaults to the "default" namespace.
(..)

I would opt for consistency.

Thank you for this feedback Chris. While we provide two hyphens, the CLI commands work with a single hyphen as well. So you should be able to use your regular approach! We will review to update the help description to represent a single dash only… cc: @leland.ursu

1 Like

Consistency is key for a seamless user experience. Aligning the command flags across all products with a single hyphen or two hyphens helps in maintaining clarity and ease of use. It’s a great suggestion to opt for a consistent approach to enhance usability and reduce potential confusion Here.