From a66272c2dbb2e0f5ae9a1f46c540533a71ed8e13 Mon Sep 17 00:00:00 2001 From: Marcus Noble Date: Tue, 13 Oct 2020 10:18:20 +0100 Subject: [PATCH 1/4] Added aws-specific helpers --- .dotfiles/aliases | 2 -- .dotfiles/aws | 24 ++++++++++++++++++++++++ 2 files changed, 24 insertions(+), 2 deletions(-) create mode 100644 .dotfiles/aws diff --git a/.dotfiles/aliases b/.dotfiles/aliases index 68b9953..ef14e43 100644 --- a/.dotfiles/aliases +++ b/.dotfiles/aliases @@ -14,5 +14,3 @@ lt() { fi ls -l --tree -L $DEPTH -I ".git|cache|log|logs|node_modules|vendor" $@ } - -alias aws='docker run --rm -ti -v ~/.aws:/root/.aws -v $(pwd):/aws -e AWS_PROFILE -e AWS_DEFAULT_REGION -e AWS_REGION amazon/aws-cli' diff --git a/.dotfiles/aws b/.dotfiles/aws new file mode 100644 index 0000000..58797b3 --- /dev/null +++ b/.dotfiles/aws @@ -0,0 +1,24 @@ +alias aws='docker pull -q amazon/aws-cli:latest 1> /dev/null && docker run --rm -i -v ~/.aws:/root/.aws -v $(pwd):/aws -e NO_COLOR=true -e AWS_PROFILE -e AWS_DEFAULT_REGION -e AWS_REGION -e AWS_ACCESS_KEY_ID -e AWS_SECRET_ACCESS_KEY -e AWS_SESSION_TOKEN amazon/aws-cli' + +assume-role() { + ROLE=$1 + + if [[ -z "$ROLE" ]]; then + export AWS_ACCESS_KEY_ID= + export AWS_SECRET_ACCESS_KEY= + export AWS_SESSION_TOKEN= + else + OUTPUT=$(aws sts assume-role --role-arn $ROLE --role-session-name assumed-role-session --query Credentials --color off --output json) + + export AWS_ACCESS_KEY_ID=$(echo $OUTPUT | jq -r .Credentials.AccessKeyId) + export AWS_SECRET_ACCESS_KEY=$(echo $OUTPUT | jq -r .Credentials.SecretAccessKey) + export AWS_SESSION_TOKEN=$(echo $OUTPUT | jq -r .Credentials.SessionToken) + fi + + aws sts get-caller-identity +} + +aws-decode-message() { + ENCODED=$1 + aws sts decode-authorization-message --query DecodedMessage --output text --encoded-message $ENCODED | jq -r '.context.action, .context.resource' +} From 868de6144f10ee78a2c126f6931030a93255b010 Mon Sep 17 00:00:00 2001 From: Marcus Noble Date: Tue, 13 Oct 2020 10:44:32 +0100 Subject: [PATCH 2/4] fix assume role --- .dotfiles/aws | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.dotfiles/aws b/.dotfiles/aws index 58797b3..3417b6d 100644 --- a/.dotfiles/aws +++ b/.dotfiles/aws @@ -8,11 +8,11 @@ assume-role() { export AWS_SECRET_ACCESS_KEY= export AWS_SESSION_TOKEN= else - OUTPUT=$(aws sts assume-role --role-arn $ROLE --role-session-name assumed-role-session --query Credentials --color off --output json) + OUTPUT=$(aws sts assume-role --role-arn $ROLE --role-session-name assumed-role-session --query Credentials --output json) - export AWS_ACCESS_KEY_ID=$(echo $OUTPUT | jq -r .Credentials.AccessKeyId) - export AWS_SECRET_ACCESS_KEY=$(echo $OUTPUT | jq -r .Credentials.SecretAccessKey) - export AWS_SESSION_TOKEN=$(echo $OUTPUT | jq -r .Credentials.SessionToken) + export AWS_ACCESS_KEY_ID=$(echo $OUTPUT | jq -r .AccessKeyId) + export AWS_SECRET_ACCESS_KEY=$(echo $OUTPUT | jq -r .SecretAccessKey) + export AWS_SESSION_TOKEN=$(echo $OUTPUT | jq -r .SessionToken) fi aws sts get-caller-identity From 4f582027f398e595ff634818e23549ebe7111a99 Mon Sep 17 00:00:00 2001 From: Marcus Noble Date: Tue, 13 Oct 2020 14:18:12 +0100 Subject: [PATCH 3/4] Fix typo in pre-req task --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 01806ce..626efd3 100644 --- a/Makefile +++ b/Makefile @@ -10,7 +10,7 @@ pre-reqs: ## Install all required binaries. brew list --cask homebrew/cask-fonts/font-open-dyslexic-nerd-font > /dev/null || brew install homebrew/cask-fonts/font-open-dyslexic-nerd-font; \ which fzf > /dev/null || brew install fzf; \ which bat > /dev/null || brew install bat; \ - which curlie > /dev/null | brew install rs/tap/curlie; \ + which curlie > /dev/null || brew install rs/tap/curlie; \ which exa > /dev/null || brew install exa; \ which kubectl > /dev/null || brew install kubectl; \ which tkn > /dev/null || brew install tektoncd/tools/tektoncd-cli; \ From 929cdf0f256a0debf68a18935462533f346399a8 Mon Sep 17 00:00:00 2001 From: Marcus Noble Date: Fri, 20 Nov 2020 08:02:29 +0000 Subject: [PATCH 4/4] Update '.config/starship.toml' --- .config/starship.toml | 27 +++++++++++++++++++++++---- 1 file changed, 23 insertions(+), 4 deletions(-) diff --git a/.config/starship.toml b/.config/starship.toml index b64837e..eeae74c 100644 --- a/.config/starship.toml +++ b/.config/starship.toml @@ -1,10 +1,29 @@ -prompt_order=["directory","git_branch","git_commit","git_state","git_status","package","golang","nodejs","terraform","memory_usage","aws","kubernetes","cmd_duration","custom","line_break","jobs","battery","time","character"] +format = """\ + $directory\ + $git_branch\ + $git_commit\ + $git_state\ + $git_status\ + $package\ + $golang\ + $nodejs\ + $terraform\ + $memory_usage\ + $aws\ + $kubernetes\ + $cmd_duration\ + $custom\ + $line_break\ + $jobs\ + $battery\ + $time\ + $character\ + """ [character] -symbol = "✨ " -error_symbol = "✗ " +success_symbol = "[✨](yellow)" +error_symbol = "[✗](red)" use_symbol_for_status = true -style_success = "yellow" [aws] symbol = " "