Merge pull request #8109 from dokku/7308-skip-install-trigger
Allow skipping the install trigger when installing a plugin
This commit is contained in:
@@ -86,7 +86,7 @@ main() {
|
||||
fi
|
||||
|
||||
# run core install triggers to force create any folders that may be missing
|
||||
dokku plugin:install --core
|
||||
dokku plugin:install
|
||||
|
||||
if [[ -n "$DOKKU_HOSTNAME" ]]; then
|
||||
echo "dokku dokku/hostname string $DOKKU_HOSTNAME" | debconf-set-selections
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
```
|
||||
plugin:disable <name> # Disable an installed plugin (third-party only)
|
||||
plugin:enable <name> # Enable a previously disabled plugin
|
||||
plugin:install [--core|git-url] [--committish branch|commit|tag] [--name custom-plugin-name] # Optionally download git-url (and pin to the specified branch/commit/tag) & run install trigger for active plugins (or only core ones)
|
||||
plugin:install [--core|git-url] [--committish branch|commit|tag] [--name custom-plugin-name] [--skip-install-trigger] # Optionally download git-url (and pin to the specified branch/commit/tag) & run install trigger for active plugins (or only core ones)
|
||||
plugin:installed <name> # Checks if a plugin is installed
|
||||
plugin:install-dependencies [--core] # Run install-dependencies trigger for active plugins (or only core ones)
|
||||
plugin:list # Print active plugins
|
||||
@@ -128,6 +128,12 @@ The `--core` flag may also be indicated as the sole argument, though it is only
|
||||
dokku plugin:install --core
|
||||
```
|
||||
|
||||
If installing plugins in a Dockerfile, you will want to skip the `install` trigger. This will be run on container boot.
|
||||
|
||||
```shell
|
||||
dokku plugin:install https://github.com/dokku/smoke-test-plugin.git --name smoke-test-plugin --skip-install-trigger
|
||||
```
|
||||
|
||||
Finally, all flags may be omitted to trigger the `install` procedures for both core and third-party plugins:
|
||||
|
||||
```shell
|
||||
|
||||
@@ -84,8 +84,8 @@ The alternative is to build a custom docker image via a custom Dockerfile. This
|
||||
|
||||
```Dockerfile
|
||||
FROM dokku/dokku:0.36.11
|
||||
RUN dokku plugin:install https://github.com/dokku/dokku-postgres.git postgres
|
||||
RUN dokku plugin:install https://github.com/dokku/dokku-redis.git redis
|
||||
RUN dokku plugin:install https://github.com/dokku/dokku-postgres.git --skip-install-trigger
|
||||
RUN dokku plugin:install https://github.com/dokku/dokku-redis.git --skip-install-trigger
|
||||
```
|
||||
|
||||
## SSH Key Management
|
||||
|
||||
@@ -33,6 +33,7 @@ download_and_enable_plugin() {
|
||||
declare desc="wrapper to download and enable specified version of plugin"
|
||||
local PLUGIN_GIT_URL="$1"
|
||||
shift
|
||||
local SKIP_INSTALL_TRIGGER=false
|
||||
while getopts ":-:" opt "$@"; do
|
||||
case "$opt" in
|
||||
-)
|
||||
@@ -47,6 +48,9 @@ download_and_enable_plugin() {
|
||||
OPTIND=$((OPTIND + 1))
|
||||
local CUSTOM_NAME="$val"
|
||||
;;
|
||||
skip-install-trigger)
|
||||
SKIP_INSTALL_TRIGGER=true
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
esac
|
||||
@@ -58,6 +62,9 @@ download_and_enable_plugin() {
|
||||
if [[ -n "$PLUGIN_COMMITTISH" ]]; then
|
||||
update_plugin "$PLUGIN_NAME" "$PLUGIN_COMMITTISH"
|
||||
fi
|
||||
if [[ "$SKIP_INSTALL_TRIGGER" == "false" ]]; then
|
||||
plugn trigger install
|
||||
fi
|
||||
}
|
||||
|
||||
update_plugin() {
|
||||
|
||||
@@ -29,7 +29,7 @@ fn-help-content() {
|
||||
cat <<help_content
|
||||
plugin:disable <name>, Disable an installed plugin (third-party only)
|
||||
plugin:enable <name>, Enable a previously disabled plugin
|
||||
plugin:install [--core|--git-url] [--committish branch|commit|commit] [--name custom-plugin-name], Optionally download git-url (and pin to the specified branch/commit/tag) & run install trigger for active plugins (or only core ones)
|
||||
plugin:install [--core|--git-url] [--committish branch|commit|commit] [--name custom-plugin-name] [--skip-install-trigger], Optionally download git-url (and pin to the specified branch/commit/tag) & run install trigger for active plugins (or only core ones)
|
||||
plugin:install-dependencies [--core], Run install-dependencies trigger for active plugins (or only core ones)
|
||||
plugin:list, Print active plugins
|
||||
plugin:trigger <args...>, Trigger an arbitrary plugin hook
|
||||
|
||||
@@ -18,7 +18,6 @@ cmd-plugin-install() {
|
||||
;;
|
||||
https:* | git* | ssh:* | file:* | *.tar.gz | *.tgz)
|
||||
download_and_enable_plugin "$@"
|
||||
plugn trigger install
|
||||
;;
|
||||
*)
|
||||
if [[ -n "$FLAG" ]]; then
|
||||
|
||||
Reference in New Issue
Block a user