2015-04-01 12:21:45 -07:00
|
|
|
#!/usr/bin/env bash
|
2019-01-07 01:04:17 -05:00
|
|
|
set -eo pipefail
|
|
|
|
|
[[ $DOKKU_TRACE ]] && set -x
|
2015-04-01 12:21:45 -07:00
|
|
|
|
2020-02-10 02:40:59 -05:00
|
|
|
trigger-docker-options-docker-args() {
|
2016-03-08 15:30:34 -05:00
|
|
|
declare desc="docker args plugin trigger"
|
2020-02-10 02:40:59 -05:00
|
|
|
declare trigger="$0"
|
|
|
|
|
declare APP="$1" IMAGE_SOURCE_TYPE="$2"
|
2016-03-02 10:50:09 -08:00
|
|
|
local STDIN=$(cat)
|
2015-04-01 12:21:45 -07:00
|
|
|
|
2016-03-02 10:50:09 -08:00
|
|
|
case "$0" in
|
|
|
|
|
*docker-args-build)
|
|
|
|
|
local PHASE=BUILD
|
|
|
|
|
;;
|
|
|
|
|
*docker-args-deploy)
|
|
|
|
|
local PHASE=DEPLOY
|
|
|
|
|
;;
|
|
|
|
|
*docker-args-run)
|
|
|
|
|
local PHASE=RUN
|
|
|
|
|
;;
|
|
|
|
|
esac
|
2015-04-01 12:21:45 -07:00
|
|
|
|
2016-03-02 10:50:09 -08:00
|
|
|
local FILE_PREFIX="DOCKER_OPTIONS_"
|
|
|
|
|
local PHASE_FILE_PATH="${DOKKU_ROOT}/${APP}/${FILE_PREFIX}${PHASE}"
|
2015-04-01 12:21:45 -07:00
|
|
|
|
2016-03-02 10:50:09 -08:00
|
|
|
local output=""
|
2015-04-01 12:21:45 -07:00
|
|
|
|
2016-03-02 10:50:09 -08:00
|
|
|
if [[ -f "$PHASE_FILE_PATH" ]]; then
|
|
|
|
|
local DONE=false
|
|
|
|
|
until $DONE; do
|
|
|
|
|
local line
|
|
|
|
|
read -r line || local DONE=true
|
2015-04-01 12:21:45 -07:00
|
|
|
|
2019-02-02 13:52:18 -05:00
|
|
|
[[ -z "$line" ]] && continue
|
2015-04-01 12:21:45 -07:00
|
|
|
|
2016-03-02 10:50:09 -08:00
|
|
|
case "$line" in
|
|
|
|
|
\#*)
|
|
|
|
|
continue
|
|
|
|
|
;;
|
2024-04-01 16:10:04 -04:00
|
|
|
|
|
|
|
|
--restart*)
|
2024-09-21 18:46:03 -04:00
|
|
|
if [[ "$PHASE" == "DEPLOY" ]]; then
|
2024-04-01 16:10:04 -04:00
|
|
|
local output="$output $line"
|
|
|
|
|
fi
|
|
|
|
|
continue
|
|
|
|
|
;;
|
|
|
|
|
|
2016-03-02 10:50:09 -08:00
|
|
|
*)
|
|
|
|
|
case "$IMAGE_SOURCE_TYPE" in
|
2025-09-08 04:28:05 -04:00
|
|
|
dockerfile | nixpacks | railpack)
|
2016-03-02 10:50:09 -08:00
|
|
|
case "$line" in
|
2021-10-05 12:19:38 -04:00
|
|
|
--link* | -v* | --volume*)
|
2016-03-02 10:50:09 -08:00
|
|
|
continue
|
|
|
|
|
;;
|
2015-11-24 11:13:50 -08:00
|
|
|
|
2016-03-02 10:50:09 -08:00
|
|
|
*)
|
|
|
|
|
local output="$output $line"
|
|
|
|
|
;;
|
2019-01-07 01:04:17 -05:00
|
|
|
esac
|
2016-03-02 10:50:09 -08:00
|
|
|
;;
|
2015-11-24 11:13:50 -08:00
|
|
|
|
2016-03-02 10:50:09 -08:00
|
|
|
herokuish)
|
|
|
|
|
case "$line" in
|
2019-01-07 01:04:17 -05:00
|
|
|
--file* | --build-args*)
|
2016-03-02 10:50:09 -08:00
|
|
|
continue
|
|
|
|
|
;;
|
2015-11-24 11:13:50 -08:00
|
|
|
|
2016-03-02 10:50:09 -08:00
|
|
|
*)
|
|
|
|
|
local output="$output $line"
|
|
|
|
|
;;
|
2019-01-07 01:04:17 -05:00
|
|
|
esac
|
2016-03-02 10:50:09 -08:00
|
|
|
;;
|
2015-11-24 11:13:50 -08:00
|
|
|
|
2016-03-02 10:50:09 -08:00
|
|
|
*)
|
|
|
|
|
local output="$output $line"
|
|
|
|
|
;;
|
|
|
|
|
esac
|
|
|
|
|
;;
|
|
|
|
|
esac
|
2019-01-07 01:04:17 -05:00
|
|
|
done <"$PHASE_FILE_PATH"
|
2016-03-02 10:50:09 -08:00
|
|
|
fi
|
2015-04-01 12:21:45 -07:00
|
|
|
|
2016-03-21 18:57:14 -07:00
|
|
|
echo -n "$STDIN$output"
|
2016-03-02 10:50:09 -08:00
|
|
|
}
|
|
|
|
|
|
2020-02-10 02:40:59 -05:00
|
|
|
trigger-docker-options-docker-args "$@"
|