Pracując jednocześnie z wieloma kontami AWS bardzo często przełączam profile AWS CLI i kluczowe jest dla mnie, abym zawsze wiedział na jakim profilu działam w danym momencie i na jakim profilu wykona się dane polecenie AWS CLI.
Napisałem więc szybką funkcję, którą podpinam do mojego .bashrc, a która realizuje prezentację bieżącego profilu w ramach promptu:
aws_profile(){
if [[ -n $AWS_PROFILE ]]; then
echo -n "[$AWS_PROFILE] "
else
echo -n ""
fi
}
PS1="\$(aws_profile)\[\033[01;34m\]\w\[\033[00m\]\$ "
Do powyższego dołożyłem dwa aliasy, dzięki którym nie muszę ciągle pisać export AWS_PROFILE=nazwa_profilu. Alias setprofile dodatkowo weryfikuje, czy profil istnieje w pliku konfiguracyjnym .aws/config, co pozwala od razu wyłapać ew. literówki:
alias clearprofile='export AWS_PROFILE='
setprofile() {
if [ $(cat ~/.aws/config | grep "\[profile $1\]" | wc -l) == 0 ]; then
echo "Invalid profile name"
else
export AWS_PROFILE=$1
fi
}
Mam nadzieję, że powyższe triki ułatwią Wam pracę :)

Dodaj komentarz