hard-coded dedicated SSH keys for staging to automatically populate ssh-agent, added a subcommand for listing SSH keys in use by SSH agent
This commit is contained in:
@@ -8,25 +8,30 @@ SKANSIBLE_DEBUG=1
|
|||||||
SKANSIBLE_UNIT_TEST=1
|
SKANSIBLE_UNIT_TEST=1
|
||||||
DEFAULT_USER=senpai
|
DEFAULT_USER=senpai
|
||||||
DEFAULT_SKANSIBLE_PLAY_HOST=vps
|
DEFAULT_SKANSIBLE_PLAY_HOST=vps
|
||||||
|
SKANSIBLE_SSH_KEY_COLLECTION=(~/.ssh/ed25519\@staging ~/.ssh/ecdsa\@staging ~/.ssh/ed25519-37851076-sk\@staging ~/.ssh/ecdsa-37851076-sk\@staging)
|
||||||
|
|
||||||
if [[ "$1" == "version" ]]; then
|
if [[ "$1" == "version" ]]; then
|
||||||
echo "0.0.0"
|
echo "0.0.0"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "$1" == "show-defaults" ]]; then
|
if [[ "$1" == "show-defaults" ]]; then
|
||||||
|
source "${SKANSIBLE_SCRIPT_PATH}/.env/bin/activate"
|
||||||
printf "User: %s\n" "$DEFAULT_USER"
|
printf "User: %s\n" "$DEFAULT_USER"
|
||||||
printf "Expected hosts for playbook: %s\n" "$DEFAULT_SKANSIBLE_PLAY_HOST"
|
printf "Expected hosts for playbook: %s\n" "$DEFAULT_SKANSIBLE_PLAY_HOST"
|
||||||
printf "Private SSH keys available throufh SSH agent: |\n%s\n" "$(ssh-add -l)"
|
printf "Private SSH keys available throufh SSH agent: |\n%s\n" "$(ssh-add -l)"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "$1" == "start-agent" ]]; then
|
if [[ "$1" == "start-agent" ]]; then
|
||||||
|
source "${SKANSIBLE_SCRIPT_PATH}/.env/bin/activate"
|
||||||
eval "$(ssh-agent -s)"
|
eval "$(ssh-agent -s)"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "$1" == "populate-agent" ]]; then
|
if [[ "$1" == "populate-agent" ]]; then
|
||||||
shift 1
|
shift 1
|
||||||
|
|
||||||
|
source "${SKANSIBLE_SCRIPT_PATH}/.env/bin/activate"
|
||||||
|
|
||||||
if [[ -z "$1" ]]; then
|
if [[ "$1" == "all" ]]; then
|
||||||
for SKANSIBLE_SSH_KEY in ~/.ssh/*; do
|
for SKANSIBLE_SSH_KEY in ~/.ssh/*; do
|
||||||
case $SKANSIBLE_SSH_KEY in
|
case $SKANSIBLE_SSH_KEY in
|
||||||
*.pub);;
|
*.pub);;
|
||||||
@@ -39,12 +44,21 @@ if [[ "$1" == "populate-agent" ]]; then
|
|||||||
*) ssh-add "${SKANSIBLE_SSH_KEY}";;
|
*) ssh-add "${SKANSIBLE_SSH_KEY}";;
|
||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
else
|
elif [[ "$1" == "select" ]]; then
|
||||||
|
for key in "${SKANSIBLE_SSH_KEY_COLLECTION[@]}"; do
|
||||||
|
ssh-add "$key"
|
||||||
|
done
|
||||||
|
elif [[ -z "$1" ]]; then
|
||||||
# @TODO improve by adding fuzzy querying or file finding pror
|
# @TODO improve by adding fuzzy querying or file finding pror
|
||||||
ssh-add "$1"
|
ssh-add "$1"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [[ "$1" == "list-agent" ]]; then
|
||||||
|
source "${SKANSIBLE_SCRIPT_PATH}/.env/bin/activate"
|
||||||
|
ssh-add -l
|
||||||
|
fi
|
||||||
|
|
||||||
if [[ "$1" == "init" ]]; then
|
if [[ "$1" == "init" ]]; then
|
||||||
shift 1
|
shift 1
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user