Skip to content

drpcli

drpcli

A CLI application for interacting with the DigitalRebar Provision API

Synopsis

drpcli is a general-purpose command for interacting with a dr-provision endpoint. It has several subcommands which have their own help.

It also has several environment variables that control aspects of its operation:

  • RS_OBJECT_ERRORS_ARE_FATAL: Have drpcli exit with a non-zero exit status if a returned object has an Errors field that is not empty. Normally it will only exit with a non-zero exit status when the API returns with an error or fatal status code.

  • RS_ENDPOINTS: A space-separated list of URLS that drpcli should try to communicate with. The first one that authenticates will be used.

  • RS_ENDPOINT: The URL that drpcli should try to communicate. Ignored if RS_ENDPOINTS exists in the environment. Default to https://127.0.0.1:8092

  • RS_URL_PROXY: The HTTP proxy drpcli should use when communicating with the dr-provision endpoint. It functions like the standard http_proxy environment variable.

  • RS_TOKEN: The token to use for authentication with the dr-provision endpoint. Overrides RS_KEY.

  • RS_CATALOG: The URL to use to fetch the artifact catalog. All commands in the 'drpcli catalog' group of commands use this. Defaults to https://repo.rackn.io

  • RS_FORMAT: The output format drpcli will use. Defaults to json

  • RS_PRINT_FIELDS: The fields of an object to display in text or table format. Defaults to all of them.

  • RS_DOWNLOAD_PROXY: The http proxy to use when downloading bootenv ISO files. If this is not set we will look for the https_proxy and http_proxy env vars.

  • RS_NO_HEADER: Controls whether to print column headers in text or table output mode.

  • RS_NO_COLOR: Controls whether output to a terminal should be stripped.

  • RS_COLORS: Controls the 8 ANSI colors that should be used in colorized output.

  • RS_TRUNCATE_LENGTH: The max length of an individual column in text or table mode.

  • RS_FORCE_NEW_SESSION: Should the client always create a new session

  • RS_IGNORE_UNIX_PROXY: Should the client ignore the unix domain socket to the server.

  • RS_CLIENT_KEY: The path to a client private key. Used with RS_CLIENT_CERT.

  • RS_CLIENT_CERT: The path to a client certificate. Used with RS_CLIENT_KEY.

  • RS_SERVER_VERIFY: Should the client verify the server's certificate.

  • RS_CA_CERT: The path to an additional CA certificate.

  • RS_KEY: The default username:password to use when missing a token.

Options

      --ca-cert string          CA certificate used to verify the server certs (with the system set)
  -c, --catalog string          The catalog file to use to get product information (default "https://repo.rackn.io")
      --catalog-path string     The path to where the catalog file exists on the drp server. By default and historically this has been /files/rebar-catalog. For example, if no catalog urls are provided, the complete path will be https://drp-ip:8090/files/rebar-catalog (default "/files/rebar-catalog")
  -S, --catalog-source string   A location from which catalog items can be downloaded. For example, in airgapped mode it would be the local catalog
      --client-cert string      Client certificate to use for communicating to the server - replaces RS_KEY, RS_TOKEN, RS_USERNAME, RS_PASSWORD
      --client-key string       Client key to use for communicating to the server - replaces RS_KEY, RS_TOKEN, RS_USERNAME, RS_PASSWORD
  -C, --colors string           The colors for JSON and Table/Text colorization.  8 values in the for 0=val,val;1=val,val2... (default "0=32;1=33;2=36;3=90;4=34,1;5=35;6=95;7=32;8=92")
  -d, --debug                   Whether the CLI should run in debug mode
  -D, --download-proxy string   HTTP Proxy to use for downloading catalog and content
  -E, --endpoint string         The Digital Rebar Provision API endpoint to talk to (default "https://127.0.0.1:8092")
  -X, --exit-early              Cause drpcli to exit if a command results in an object that has errors
      --fetch-catalogs all      Determines which catalog urls to use to fetch the catalog. If set to all, all the catalog urls defined with catalog_url and catalog_urls as well as the default catalog will be used. If set to server, only the catalog urls defined on the server will be used. If set to cli, then the specific url specified with the -c flag will be used. It defaults to `all`. Allowed values `all, `server`, `cli`. (default "all")
  -f, --force                   When needed, attempt to force the operation - used on some update/patch calls
      --force-new-session       Should the client always create a new session
  -F, --format string           The serialization we expect for output.  Can be "json" or "yaml" or "text" or "table" (default "json")
  -h, --help                    help for drpcli
      --ignore-unix-proxy       Should the client ignore unix proxies
  -N, --no-color                Whether the CLI should output colorized strings
  -H, --no-header               Should header be shown in "text" or "table" mode
  -x, --no-token                Do not use token auth or token cache
  -P, --password string         password of the Digital Rebar Provision user (default "r0cketsk8ts")
  -p, --platform string         Platform to filter details by. Defaults to current system. Format: arch/os
  -J, --print-fields string     The fields of the object to display in "text" or "table" mode. Comma separated
  -r, --ref string              A reference object for update commands that can be a file name, yaml, or json blob
      --server-verify           Should the client verify the server cert
  -T, --token string            token of the Digital Rebar Provision access
  -t, --trace string            The log level API requests should be logged at on the server side
  -Z, --trace-token string      A token that individual traced requests should report in the server logs
  -j, --truncate-length int     Truncate columns at this length (default 40)
  -u, --url-proxy string        URL Proxy for passing actions through another DRP
  -U, --username string         Name of the Digital Rebar Provision user to talk to (default "rocketskates")

SEE ALSO

Auto generated by spf13/cobra on 6-Sep-2024