diff --git a/plugins/plugin/internal-functions b/plugins/plugin/internal-functions index 3a417402f..138c9972c 100755 --- a/plugins/plugin/internal-functions +++ b/plugins/plugin/internal-functions @@ -8,3 +8,10 @@ plugin_list_cmd() { plugn version plugn list } + +plugin_prime_bash_completion() { + declare desc="primes the bash-completion cache" + + dokku_log_info1_quiet "Priming bash-completion cache" + dokku --quiet help --all | awk '/^ /{ print $1 }' | sort > "/var/cache/dokku-completion" +} diff --git a/plugins/plugin/subcommands/disable b/plugins/plugin/subcommands/disable index 207b6766a..94efb0a97 100755 --- a/plugins/plugin/subcommands/disable +++ b/plugins/plugin/subcommands/disable @@ -9,6 +9,7 @@ plugin_disable_cmd() { [[ -z $2 ]] && dokku_log_fail "Please specify a plugin to disable" local PLUGIN="$2" disable_plugin "$PLUGIN" + plugin_prime_bash_completion } plugin_disable_cmd "$@" diff --git a/plugins/plugin/subcommands/enable b/plugins/plugin/subcommands/enable index 624393e5b..4b4f24eed 100755 --- a/plugins/plugin/subcommands/enable +++ b/plugins/plugin/subcommands/enable @@ -9,6 +9,7 @@ plugin_enable_cmd() { [[ -z $2 ]] && dokku_log_fail "Please specify a plugin to enable" local PLUGIN="$2" enable_plugin "$PLUGIN" + plugin_prime_bash_completion } plugin_enable_cmd "$@" diff --git a/plugins/plugin/subcommands/install b/plugins/plugin/subcommands/install index 7ff991f3a..8da38b67e 100755 --- a/plugins/plugin/subcommands/install +++ b/plugins/plugin/subcommands/install @@ -20,6 +20,7 @@ plugin_install_cmd() { plugn trigger install ;; esac + plugin_prime_bash_completion } plugin_install_cmd "$@" diff --git a/plugins/plugin/subcommands/uninstall b/plugins/plugin/subcommands/uninstall index 064ee721e..86fbf36b8 100755 --- a/plugins/plugin/subcommands/uninstall +++ b/plugins/plugin/subcommands/uninstall @@ -9,6 +9,7 @@ plugin_uninstall_cmd() { [[ -z $2 ]] && dokku_log_fail "Please specify a plugin to enable" local PLUGIN="$2" uninstall_plugin "$PLUGIN" + plugin_prime_bash_completion } plugin_uninstall_cmd "$@" diff --git a/plugins/plugin/subcommands/update b/plugins/plugin/subcommands/update index 19e82614a..5077b2028 100755 --- a/plugins/plugin/subcommands/update +++ b/plugins/plugin/subcommands/update @@ -10,6 +10,7 @@ plugin_update_cmd() { plugn update "$PLUGIN" "$PLUGIN_COMMITTISH" fi plugn trigger update + plugin_prime_bash_completion } plugin_update_cmd "$@"