awsume を使って Mac Terminal 上で AWS Profile を切り替えているケースで、本番アカウントの AWS Profile へ切り替えた際に 赤背景にして注意喚起 を促す設定です。
環境・制限
本記事の方法は次の環境のみが対象です。
- スイッチロールに awsume を使用している
- zsh ユーザーのみ対象
- zsh 標準のプロンプト設定
PROMPT
,PS1
が有効なターミナル
warp 等、何らかのツール・設定で既にプロンプト設定が書き換えられている場合は、残念ながら本記事の設定は効きません。
やり方
zsh の設定ファイル ~/.zshrc
に下記設定を記述します。
~/.zshrc
# PROMPT for awsume.
if [[ $SHELL == *'zsh'* ]]; then
function set_awsume_prompt() {
if [[ $AWSUME_PROFILE =~ ^.*(pro|prd).*$ ]]; then
_PREV=${_PREV:-$PROMPT}
export PROMPT='%K{red}%B[PRODUCTION] %~ %#%K%b '
elif [[ -v _PREV ]]; then
export PROMPT=$_PREV
unset _PREV
fi
}
autoload -Uz add-zsh-hook
add-zsh-hook precmd set_awsume_prompt
fi
AWS Profile 名 ($AWSUME_PROFILE
) に、文字 production
prd
prod
を含むケースを本番プロファイルに切り替わったと判定しています。