2016-06-30 17:34:07 -07:00
|
|
|
#!/usr/bin/env bash
|
2019-01-07 01:04:17 -05:00
|
|
|
set -eo pipefail
|
|
|
|
|
[[ $DOKKU_TRACE ]] && set -x
|
2016-06-30 17:34:07 -07:00
|
|
|
source "$PLUGIN_CORE_AVAILABLE_PATH/common/functions"
|
2016-07-01 11:42:16 -07:00
|
|
|
source "$PLUGIN_AVAILABLE_PATH/ssh-keys/functions"
|
2016-06-30 17:34:07 -07:00
|
|
|
|
2020-02-09 22:41:39 -05:00
|
|
|
cmd-ssh-keys-remove() {
|
2016-06-30 17:34:07 -07:00
|
|
|
declare desc="Removes key from authorized_keys"
|
2020-02-10 01:40:30 -05:00
|
|
|
declare cmd="ssh-keys:remove"
|
|
|
|
|
[[ "$1" == "$cmd" ]] && shift 1
|
2020-12-19 16:43:32 -05:00
|
|
|
declare NAME="$1" FINGERPRINT="$2"
|
2020-02-10 01:40:30 -05:00
|
|
|
|
2016-06-30 17:34:07 -07:00
|
|
|
verify_ssh_key_file
|
2020-12-19 16:43:32 -05:00
|
|
|
if [[ "$NAME" == "--fingerprint" ]]; then
|
|
|
|
|
[[ -z "$FINGERPRINT" ]] && dokku_log_fail "A fingerprint is required to remove a key, ie: dokku ssh-keys:remove --fingerprint FINGERPRINT"
|
|
|
|
|
elif [[ -z "$NAME" ]]; then
|
|
|
|
|
dokku_log_fail "A name is required to remove a key, ie: dokku ssh-keys:remove <name>"
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
if [[ "$NAME" == "--fingerprint" ]]; then
|
|
|
|
|
sshcommand acl-remove-by-fingerprint dokku "$FINGERPRINT" || dokku_log_fail "sshcommand returned an error $?"
|
|
|
|
|
else
|
|
|
|
|
sshcommand acl-remove dokku "$NAME" || dokku_log_fail "sshcommand returned an error $?"
|
|
|
|
|
fi
|
2016-06-30 17:34:07 -07:00
|
|
|
}
|
|
|
|
|
|
2020-02-09 22:41:39 -05:00
|
|
|
cmd-ssh-keys-remove "$@"
|