Home

Awesome

ZSH AWS plugin

This plugin is based on the original aws plugin of Oh-My-ZSH!

It provides completion support for awscli and a few utilities to manage AWS profiles and display them in the prompt.

Installation

First you have to enable Bash completion before loading the plugin in ~/.zshrc

autoload -Uz compinit && compinit
autoload -Uz bashcompinit && bashcompinit

Now the plugin can be loaded

zplug

zplug "apachler/zsh-aws"

Plugin commands

Plugin options

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:

Configuration

Configuration and credential file settings by AWS

Scenario: IAM roles with a source profile and MFA authentication

Source profile credentials in ~/.aws/credentials:

[source-profile-name]
aws_access_key_id = ...
aws_secret_access_key = ...

Role configuration in ~/.aws/config:

[profile source-profile-name]
mfa_serial = arn:aws:iam::111111111111:mfa/myuser
region = us-east-1
output = json

[profile profile-with-role]
role_arn = arn:aws:iam::9999999999999:role/myrole
mfa_serial = arn:aws:iam::111111111111:mfa/myuser
source_profile = source-profile-name
region = us-east-1
output = json