Merge pull request #4683 from dokku/4664-strip-port-publishing
Strip published port flags when triggering deploy tasks
This commit is contained in:
@@ -230,15 +230,39 @@ func executeScript(appName string, image string, imageTag string, phase string)
|
|||||||
dockerArgs = append(dockerArgs, words...)
|
dockerArgs = append(dockerArgs, words...)
|
||||||
}
|
}
|
||||||
|
|
||||||
filteredArgs := []string{"restart", "cpus", "memory", "memory-swap", "memory-reservation", "gpus"}
|
filteredArgs := []string{
|
||||||
|
"--cpus",
|
||||||
|
"--gpus",
|
||||||
|
"--memory",
|
||||||
|
"--memory-reservation",
|
||||||
|
"--memory-swap",
|
||||||
|
"--publish",
|
||||||
|
"--publish-all",
|
||||||
|
"--restart",
|
||||||
|
"-p",
|
||||||
|
"-P",
|
||||||
|
}
|
||||||
for _, filteredArg := range filteredArgs {
|
for _, filteredArg := range filteredArgs {
|
||||||
// re := regexp.MustCompile("--" + filteredArg + "=[0-9A-Za-z!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~]+ ")
|
// re := regexp.MustCompile("--" + filteredArg + "=[0-9A-Za-z!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~]+ ")
|
||||||
|
|
||||||
|
skipNext := false
|
||||||
var filteredDockerArgs []string
|
var filteredDockerArgs []string
|
||||||
for _, dockerArg := range dockerArgs {
|
for _, dockerArg := range dockerArgs {
|
||||||
if !strings.HasPrefix(dockerArg, "--"+filteredArg+"=") {
|
if skipNext {
|
||||||
filteredDockerArgs = append(filteredDockerArgs, dockerArg)
|
skipNext = false
|
||||||
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if strings.HasPrefix(dockerArg, filteredArg+"=") {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
|
||||||
|
if dockerArg == filteredArg {
|
||||||
|
skipNext = true
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
|
||||||
|
filteredDockerArgs = append(filteredDockerArgs, dockerArg)
|
||||||
}
|
}
|
||||||
|
|
||||||
dockerArgs = filteredDockerArgs
|
dockerArgs = filteredDockerArgs
|
||||||
|
|||||||
@@ -36,9 +36,16 @@ scheduler-docker-local-pre-deploy-chown-app() {
|
|||||||
if [[ -n "$APP_PATHS" ]]; then
|
if [[ -n "$APP_PATHS" ]]; then
|
||||||
CONTAINER_PATHS=$(echo "$APP_PATHS" | awk -F ':' '{ print $2 }' | xargs)
|
CONTAINER_PATHS=$(echo "$APP_PATHS" | awk -F ':' '{ print $2 }' | xargs)
|
||||||
DOCKER_ARGS=$(: | plugn trigger docker-args-deploy "$APP" "$IMAGE_TAG")
|
DOCKER_ARGS=$(: | plugn trigger docker-args-deploy "$APP" "$IMAGE_TAG")
|
||||||
# strip --restart args from DOCKER_ARGS
|
|
||||||
# shellcheck disable=SC2001
|
filterdArgs=("--cpus" "--gpus" "--memory" "--memory-reservation" "--memory-swap" "--publish" "--publish-all" "-p" "-P")
|
||||||
DOCKER_ARGS=$(sed -e "s/--restart=[[:graph:]]\+[[:blank:]]\?//g" <<<"$DOCKER_ARGS")
|
for filteredArg in "${filterdArgs[@]}"; do
|
||||||
|
# shellcheck disable=SC2001
|
||||||
|
DOCKER_ARGS=$(sed -e "s/$filteredArg=[[:graph:]]\+[[:blank:]]\?//g" <<<"$DOCKER_ARGS")
|
||||||
|
|
||||||
|
# shellcheck disable=SC2001
|
||||||
|
DOCKER_ARGS=$(sed -e "s/$filteredArg\+[[:blank:]][[:graph:]]\+[[:blank:]]\?//g" <<<"$DOCKER_ARGS")
|
||||||
|
done
|
||||||
|
|
||||||
eval "ARG_ARRAY=($DOCKER_ARGS)"
|
eval "ARG_ARRAY=($DOCKER_ARGS)"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user