From 21b7cf72c9f38cab4dbbf532a7356e1a38b03b2c Mon Sep 17 00:00:00 2001 From: 17Halbe Date: Sun, 11 Feb 2018 18:26:46 +0100 Subject: [PATCH] added config-path option to setup.sh script (Closes: #698) * added config-path option to setup.sh script --- setup.sh | 28 +++++++++++++++++++++++----- 1 file changed, 23 insertions(+), 5 deletions(-) diff --git a/setup.sh b/setup.sh index 6b279202..13e2c6cb 100755 --- a/setup.sh +++ b/setup.sh @@ -11,6 +11,7 @@ INFO=$(docker ps \ IMAGE_NAME=$(echo $INFO | awk '{print $1}') CONTAINER_NAME=$(echo $INFO | awk '{print $2}') +CONFIG_PATH="$(pwd)/config" if [ -z "$IMAGE_NAME" ]; then IMAGE_NAME=tvial/docker-mailserver:latest @@ -38,6 +39,8 @@ OPTIONS: 'tvial/docker-mailserver:latest'. -c CONTAINER_NAME The name of the running container. + -p PATH config folder path (default: $(pwd)/config) + SUBCOMMANDS: email: @@ -61,7 +64,7 @@ SUBCOMMANDS: debug: $0 debug fetchmail - $0 debug fail2ban [ ] + $0 debug fail2ban [ ] $0 debug show-mail-logs $0 debug inspect $0 debug login @@ -84,7 +87,7 @@ _docker_image() { fi docker run \ --rm \ - -v "$(pwd)/config":/tmp/docker-mailserver \ + -v "$CONFIG_PATH":/tmp/docker-mailserver \ -ti "$IMAGE_NAME" $@ } @@ -97,7 +100,7 @@ _docker_container() { fi } -while getopts ":c:i:" OPT; do +while getopts ":c:i:p:" OPT; do case $OPT in c) CONTAINER_NAME="$OPTARG" @@ -105,6 +108,21 @@ while getopts ":c:i:" OPT; do i) IMAGE_NAME="$OPTARG" ;; + p) + case "$OPTARG" in + /*) + CONFIG_PATH="$OPTARG" + ;; + *) + CONFIG_PATH="$(pwd)/$OPTARG" + ;; + esac + if [ ! -d "$CONFIG_PATH" ]; then + echo "Directory doesn't exist" + _usage + exit 1 + fi + ;; \?) echo "Invalid option: -$OPTARG" >&2 ;; @@ -133,7 +151,7 @@ case $1 in restrict) shift _docker_image restrict-access $@ - ;; + ;; list) _docker_image listmailuser ;; @@ -211,7 +229,7 @@ case $1 in case "$RESULT" in *"is not banned"*) ;; *"NOK"*) ;; - *) echo -n "unbanned IP from $JAIL: " + *) echo -n "unbanned IP from $JAIL: " echo "$RESULT";; esac done