2018-10-28 13:17:41 +01:00
|
|
|
# aws
|
|
|
|
|
|
|
|
This plugin provides completion support for [awscli](https://docs.aws.amazon.com/cli/latest/reference/index.html)
|
2019-03-24 19:37:07 +01:00
|
|
|
and a few utilities to manage AWS profiles and display them in the prompt.
|
2018-10-28 13:17:41 +01:00
|
|
|
|
2020-10-24 23:07:49 +02:00
|
|
|
To use it, make sure [jq](https://stedolan.github.io/jq/download/) is installed, and add `aws` to the plugins array in your zshrc file.
|
2018-10-28 13:17:41 +01:00
|
|
|
|
|
|
|
```zsh
|
|
|
|
plugins=(... aws)
|
|
|
|
```
|
|
|
|
|
|
|
|
## Plugin commands
|
|
|
|
|
2019-03-24 19:54:56 +01:00
|
|
|
* `asp [<profile>]`: sets `$AWS_PROFILE` and `$AWS_DEFAULT_PROFILE` (legacy) to `<profile>`.
|
2019-03-24 19:46:27 +01:00
|
|
|
It also sets `$AWS_EB_PROFILE` to `<profile>` for the Elastic Beanstalk CLI.
|
2019-03-24 19:37:07 +01:00
|
|
|
Run `asp` without arguments to clear the profile.
|
2018-10-28 13:17:41 +01:00
|
|
|
|
2020-10-29 22:13:36 +01:00
|
|
|
* `acp [<profile>]`: in addition to `asp` functionality, it actually changes the profile by
|
|
|
|
assuming the role specified in the `<profile>` configuration. It supports MFA and sets
|
|
|
|
`$AWS_ACCESS_KEY_ID`, `$AWS_SECRET_ACCESS_KEY` and `$AWS_SESSION_TOKEN`, if obtained. It
|
|
|
|
requires the roles to be configured as per the
|
|
|
|
[official guide](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-role.html).
|
|
|
|
Run `acp` without arguments to clear the profile.
|
|
|
|
|
2019-03-24 19:54:56 +01:00
|
|
|
* `agp`: gets the current value of `$AWS_PROFILE`.
|
2018-10-28 13:17:41 +01:00
|
|
|
|
2019-03-24 19:54:56 +01:00
|
|
|
* `aws_change_access_key`: changes the AWS access key of a profile.
|
|
|
|
|
|
|
|
* `aws_profiles`: lists the available profiles in the `$AWS_CONFIG_FILE` (default: `~/.aws/config`).
|
2019-03-24 19:37:07 +01:00
|
|
|
Used to provide completion for the `asp` function.
|
|
|
|
|
|
|
|
## Plugin options
|
|
|
|
|
2019-04-09 18:24:04 +02:00
|
|
|
* Set `SHOW_AWS_PROMPT=false` in your zshrc file if you want to prevent the plugin from modifying your RPROMPT.
|
|
|
|
Some themes might overwrite the value of RPROMPT instead of appending to it, so they'll need to be fixed to
|
|
|
|
see the AWS profile prompt.
|
2019-03-24 19:37:07 +01:00
|
|
|
|
|
|
|
## Theme
|
|
|
|
|
|
|
|
The plugin creates an `aws_prompt_info` function that you can use in your theme, which displays
|
|
|
|
the current `$AWS_PROFILE`. It uses two variables to control how that is shown:
|
|
|
|
|
|
|
|
- ZSH_THEME_AWS_PREFIX: sets the prefix of the AWS_PROFILE. Defaults to `<aws:`.
|
|
|
|
|
|
|
|
- ZSH_THEME_AWS_SUFFIX: sets the suffix of the AWS_PROFILE. Defaults to `>`.
|