mirror of
https://github.com/dokku/dokku.git
synced 2025-12-29 00:25:08 +01:00
refactor: ensure parallel runs properly for non-restorable apps and moreutils parallel
Refs #3023
This commit is contained in:
committed by
GitHub
parent
0db55bc6af
commit
b6e7fb5839
@@ -7,9 +7,29 @@ source "$PLUGIN_AVAILABLE_PATH/ps/functions"
|
||||
ps_restore_cmd() {
|
||||
declare desc="starts all apps with DOKKU_APP_RESTORE not set to 0 via command line"
|
||||
local cmd="ps:restore"
|
||||
local APP="$1"
|
||||
|
||||
if [[ -n "$APP" ]]; then
|
||||
DOKKU_APP_RESTORE="$(config_get "$APP" DOKKU_APP_RESTORE || true)"
|
||||
if [[ $DOKKU_APP_RESTORE != 0 ]]; then
|
||||
ps_start "$APP" || dokku_log_warn "dokku ps:restore ${APP} failed"
|
||||
fi
|
||||
else
|
||||
ps_restore_all
|
||||
fi
|
||||
}
|
||||
|
||||
ps_restore_all() {
|
||||
local GNU_PARALLEL
|
||||
|
||||
if which parallel > /dev/null 2>&1; then
|
||||
dokku_apps | parallel dokku ps:start
|
||||
dokku_log_info1 "Restarting in parallel"
|
||||
GNU_PARALLEL=$(parallel -V 2>&1 | grep GNU || true)
|
||||
if [[ -z "$GNU_PARALLEL" ]]; then
|
||||
parallel -i bash -c "dokku ps:restore {}" -- $(dokku_apps)
|
||||
else
|
||||
dokku_apps | parallel --will-cite 'dokku ps:restore {}'
|
||||
fi
|
||||
return
|
||||
fi
|
||||
|
||||
|
||||
Reference in New Issue
Block a user