I created a small plugin for the charm
CLI, charm-config, to present the available config options for a given charm in a more readable way, in the form of a table. For example:
$ charm config cs:~containers/aws-integrator
Option Type Default Value Description
------------------------------------------------------------------------------------------------------------------------
access-key string '' An IAM access key. It is strongly recommended that you use 'juju trust' inst...
credentials string '' The base64-encoded contents of an AWS credentials file, which must include bo...
secret-key string '' An IAM secret key. It is strongly recommended that you use 'juju trust' inst...
snap_proxy string '' DEPRECATED. Use snap-http-proxy and snap-https-proxy model configuration sett...
snap_proxy_url string '' DEPRECATED. Use snap-store-proxy model configuration setting. The address of ...
snapd_refresh string '' How often snapd handles updates for installed snaps. The default (an empty st...
Some additional features are filtering by config option name, showing just the default value, or just the full description:
$ charm config cs:~containers/aws-integrator 'snap*'
Option Type Default Value Description
------------------------------------------------------------------------------------------------------------------------
snap_proxy string '' DEPRECATED. Use snap-http-proxy and snap-https-proxy model configuration sett...
snap_proxy_url string '' DEPRECATED. Use snap-store-proxy model configuration setting. The address of ...
snapd_refresh string '' How often snapd handles updates for installed snaps. The default (an empty st...
$ charm config cs:~containers/kubernetes-master authorization-mode --value
AlwaysAllow
$ charm config cs:~containers/kubernetes-master authorization-mode --desc
Comma separated authorization modes. Allowed values are
"RBAC", "Node", "Webhook", "ABAC", "AlwaysDeny" and "AlwaysAllow".
Note that this information is already available via the standard charm
command:
charm show cs:my-charm charm-config
However, the output is raw YAML and not very easy to scan, particularly for charms with a large number of config options, and doesn’t include any filtering.
You can install this plugin with:
snap install --classic charm-config