# Config
Awsume's configuration file can be found at ~/.awsume/config.yaml
by
default. If the XDG_CONFIG_HOME
environment variable is set then it can be
found at: ${XDG_CONFIG_HOME}/awsume/config.yaml
.
Use awsume --config help
to view available commands for config management.
# Properties
There are a few configuration properties found in awsume's config:
colors: true
fuzzy-match: true
role-duration: 0
region: us-west-2
role-session-name: awsume-cli-session
- colors You can enable to disable adding colors to awsume's output. This is disabled on Windows machines.
- fuzzy-match You can enable to disable fuzzy-matching the given profile if the given profile is not found. See more about it here
- role-duration You can set a default role duration (in seconds) to awsume. _Note: If you specify a role duration that is greater than the maximum configured for that role, awsume will fail to assume the role. See how this impacts awsume here
- region You can specify a default region. See how this impacts awsume here
- role-session-name You can specify a default role session name that will be associated with your credential's session. See how this impacts awsume here
# Modifying Config
You can use the awsume --config
command to modify the config.
To configure awsume, you can edit the file manually or you can make use of the --config
flag like this:
awsume --config set <key> <value> <value> <value>
awsume --config set role-duration 43200
Or you can reset to the default value with:
awsume --config reset role-duration
You can delete a value with:
awsume --config clear role-duration
And you can get complex with your config like this:
# awsume --config set a.b.c x '{"hello":"world"}' 1 '"2"'
a:
b:
c:
- 'x'
- hello: world
- 1
- '2'
For each value, if it can be parsed as JSON, it will be. Otherwise it will be a string.
If you only provide one value, it will set the key to that value directly, without nesting it in an array, as follows:
# awsume --config set a.b.c x
a:
b:
c: x
# Notes
Note that you can provide any data to awsume's config you want (it doesn't mean that anything will happen).
If you are a plugin developer, you can utilize awsume's global configuration to manage your plugin's configuration. We recommend nesting your configuration under a top-level key (to not interfere with any other plugins or future configuration). For instance, the awsume console plugin (opens new window) stores its configuration under a top-level console
key, like this:
colors: true
fuzzy-match: true
role-duration: 0
region: us-west-2
console:
browser_command: '"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" --user-data-dir=/tmp/{profile} "{url}" --no-first-run'