From 5ad1d3c5b67bb65872a0d9daf6118c6f967ab7d1 Mon Sep 17 00:00:00 2001 From: "nicolas.dorier" Date: Wed, 12 Jun 2019 12:23:58 +0900 Subject: [PATCH] Refactor btcpay up, down and restart in helpers.sh --- btcpay-down.sh | 10 +++------- btcpay-restart.sh | 4 ++-- btcpay-setup.sh | 13 +++++++------ btcpay-up.sh | 5 +++-- btcpay-update.sh | 4 +--- changedomain.sh | 9 +++------ helpers.sh | 33 +++++++++++++++++++++++++++++++++ 7 files changed, 52 insertions(+), 26 deletions(-) diff --git a/btcpay-down.sh b/btcpay-down.sh index 4b4aa24..20d2239 100755 --- a/btcpay-down.sh +++ b/btcpay-down.sh @@ -1,10 +1,6 @@ #!/bin/bash . /etc/profile.d/btcpay-env.sh - -cd "`dirname $BTCPAY_ENV_FILE`" - -docker-compose -f $BTCPAY_DOCKER_COMPOSE down -t "${COMPOSE_HTTP_TIMEOUT:-180}" -if ! [ $? -eq 0 ]; then - docker-compose -f $BTCPAY_DOCKER_COMPOSE down -fi +cd "$BTCPAY_BASE_DIRECTORY/btcpayserver-docker" +. helpers.sh +btcpay_down \ No newline at end of file diff --git a/btcpay-restart.sh b/btcpay-restart.sh index 914e7b6..0aee47d 100755 --- a/btcpay-restart.sh +++ b/btcpay-restart.sh @@ -2,5 +2,5 @@ . /etc/profile.d/btcpay-env.sh -cd "`dirname $BTCPAY_ENV_FILE`" -docker-compose -f $BTCPAY_DOCKER_COMPOSE restart -t "${COMPOSE_HTTP_TIMEOUT:-180}" +cd "$BTCPAY_BASE_DIRECTORY/btcpayserver-docker" +btcpay_restart diff --git a/btcpay-setup.sh b/btcpay-setup.sh index 0b89469..f99cb73 100755 --- a/btcpay-setup.sh +++ b/btcpay-setup.sh @@ -321,9 +321,9 @@ Requires=docker.service network-online.target Type=oneshot RemainAfterExit=yes -ExecStart=/bin/bash -c '. /etc/profile.d/btcpay-env.sh && cd \"\$(dirname \$BTCPAY_ENV_FILE)\" && docker-compose -f \"\$BTCPAY_DOCKER_COMPOSE\" up -d -t \"\$COMPOSE_HTTP_TIMEOUT\"' -ExecStop=/bin/bash -c '. /etc/profile.d/btcpay-env.sh && cd \"\$(dirname \$BTCPAY_ENV_FILE)\" && docker-compose -f \"\$BTCPAY_DOCKER_COMPOSE\" stop -t \"\$COMPOSE_HTTP_TIMEOUT\"' -ExecReload=/bin/bash -c '. /etc/profile.d/btcpay-env.sh && cd \"\$(dirname \$BTCPAY_ENV_FILE)\" && docker-compose -f \"\$BTCPAY_DOCKER_COMPOSE\" restart -t \"\$COMPOSE_HTTP_TIMEOUT\"' +ExecStart=/bin/bash -c '. /etc/profile.d/btcpay-env.sh && cd \"\$BTCPAY_BASE_DIRECTORY/btcpayserver-docker\" && . helpers.sh && btcpay_up' +ExecStop=/bin/bash -c '. /etc/profile.d/btcpay-env.sh && cd \"\$BTCPAY_BASE_DIRECTORY/btcpayserver-docker\" && . helpers.sh && btcpay_down' +ExecReload=/bin/bash -c '. /etc/profile.d/btcpay-env.sh && cd \"\$BTCPAY_BASE_DIRECTORY/btcpayserver-docker\" && . helpers.sh && btcpay_restart' [Install] WantedBy=multi-user.target" > /etc/systemd/system/btcpayserver.service @@ -361,8 +361,9 @@ stop on runlevel [!2345] script . /etc/profile.d/btcpay-env.sh - cd \"\$(dirname \$BTCPAY_ENV_FILE)\" - docker-compose -f \"\$BTCPAY_DOCKER_COMPOSE\" up -d + cd \"\$BTCPAY_BASE_DIRECTORY/btcpayserver-docker\" + . helpers.sh + btcpay_up end script" > /etc/init/start_containers.conf echo -e "BTCPay Server upstart configured in /etc/init/start_containers.conf\n" if $START; then @@ -378,7 +379,7 @@ if [ ! -z "$OLD_BTCPAY_DOCKER_COMPOSE" ] && [ "$OLD_BTCPAY_DOCKER_COMPOSE" != "$ docker-compose -f "$OLD_BTCPAY_DOCKER_COMPOSE" down -t "${COMPOSE_HTTP_TIMEOUT:-180}" fi -$START && docker-compose -f "$BTCPAY_DOCKER_COMPOSE" up -d --remove-orphans -t "${COMPOSE_HTTP_TIMEOUT:-180}" +$START && btcpay_up ! $START && docker-compose -f "$BTCPAY_DOCKER_COMPOSE" pull # Give SSH key to BTCPay diff --git a/btcpay-up.sh b/btcpay-up.sh index e3cf950..e47e1de 100755 --- a/btcpay-up.sh +++ b/btcpay-up.sh @@ -2,5 +2,6 @@ . /etc/profile.d/btcpay-env.sh -cd "`dirname $BTCPAY_ENV_FILE`" -docker-compose -f $BTCPAY_DOCKER_COMPOSE up --remove-orphans -d -t "${COMPOSE_HTTP_TIMEOUT:-180}" +cd "$BTCPAY_BASE_DIRECTORY/btcpayserver-docker" +. helpers.sh +btcpay_up diff --git a/btcpay-update.sh b/btcpay-update.sh index fb3c8d0..258a67d 100755 --- a/btcpay-update.sh +++ b/btcpay-update.sh @@ -44,6 +44,4 @@ fi . helpers.sh install_tooling btcpay_update_docker_env - -cd "`dirname $BTCPAY_ENV_FILE`" -docker-compose -f $BTCPAY_DOCKER_COMPOSE up -d --remove-orphans -t "${COMPOSE_HTTP_TIMEOUT:-180}" +btcpay_up diff --git a/changedomain.sh b/changedomain.sh index c3ca9d4..79ea871 100755 --- a/changedomain.sh +++ b/changedomain.sh @@ -13,13 +13,10 @@ echo "Changing domain from \"$OLD_HOST\" to \"$NEW_HOST\"" export BTCPAY_HOST="$NEW_HOST" export ACME_CA_URI="https://acme-v01.api.letsencrypt.org/directory" -ORIGINAL_DIRECTORY="$(pwd)" +pushd # Modify environment file cd "$BTCPAY_BASE_DIRECTORY/btcpayserver-docker" . helpers.sh btcpay_update_docker_env -cd "$ORIGINAL_DIRECTORY" - -cd "`dirname $BTCPAY_ENV_FILE`" -docker-compose -f "$BTCPAY_DOCKER_COMPOSE" up -d -t "${COMPOSE_HTTP_TIMEOUT:-180}" -fi +btcpay_up +popd \ No newline at end of file diff --git a/helpers.sh b/helpers.sh index ad4cd1b..2fa7cf8 100755 --- a/helpers.sh +++ b/helpers.sh @@ -82,4 +82,37 @@ LIBREPATRON_HOST=$LIBREPATRON_HOST BTCTRANSMUTER_HOST=$BTCTRANSMUTER_HOST BTCPAY_CRYPTOS=$BTCPAY_CRYPTOS WOOCOMMERCE_HOST=$WOOCOMMERCE_HOST" > $BTCPAY_ENV_FILE +} + +btcpay_up() { + pushd + cd "$(dirname "$BTCPAY_ENV_FILE")" + docker-compose -f $BTCPAY_DOCKER_COMPOSE up --remove-orphans -d -t "${COMPOSE_HTTP_TIMEOUT:-180}" + # Depending on docker-compose, either the timeout does not work, or "compose -d and --timeout cannot be combined" + if ! [ $? -eq 0 ]; then + docker-compose -f $BTCPAY_DOCKER_COMPOSE up --remove-orphans -d + fi + popd +} + +btcpay_down() { + pushd + cd "$(dirname "$BTCPAY_ENV_FILE")" + docker-compose -f $BTCPAY_DOCKER_COMPOSE down -t "${COMPOSE_HTTP_TIMEOUT:-180}" + # Depending on docker-compose, the timeout does not work. + if ! [ $? -eq 0 ]; then + docker-compose -f $BTCPAY_DOCKER_COMPOSE down + fi + popd +} + +btcpay_restart() { + pushd + cd "$(dirname "$BTCPAY_ENV_FILE")" + docker-compose -f $BTCPAY_DOCKER_COMPOSE restart -t "${COMPOSE_HTTP_TIMEOUT:-180}" + # Depending on docker-compose, the timeout does not work. + if ! [ $? -eq 0 ]; then + docker-compose -f $BTCPAY_DOCKER_COMPOSE restart + fi + popd } \ No newline at end of file