diff --git a/debian/scripts/maintenance.sh b/debian/scripts/maintenance.sh index a02a60a..9089dbc 100644 --- a/debian/scripts/maintenance.sh +++ b/debian/scripts/maintenance.sh @@ -129,13 +129,43 @@ switch_off() { # upgrade js-controller upgrade() { - echo 'You are now going to upgrade your js-controller.' - echo 'As this will change data in /opt/iobroker, make sure you have a backup!' - echo 'During the upgrade process the container will automatically switch into maintenance mode and stop ioBroker.' - echo 'Depending of the restart policy, you container will be stoped/ restarted automatically after the upgrade.' - read -p 'Do you want to continue [yes/no]? ' A - if [ "$A" == "y" ] || [ "$A" == "Y" ] || [ "$A" == "yes" ] - then + if [ "$autoconfirm" == "no" ] + then + echo 'You are now going to upgrade your js-controller.' + echo 'As this will change data in /opt/iobroker, make sure you have a backup!' + echo 'During the upgrade process the container will automatically switch into maintenance mode and stop ioBroker.' + echo 'Depending of the restart policy, you container will be stoped/ restarted automatically after the upgrade.' + read -p 'Do you want to continue [yes/no]? ' A + if [ "$A" == "y" ] || [ "$A" == "Y" ] || [ "$A" == "yes" ] + then + echo 'Activating maintenance mode...' + echo "maintenance" > /opt/scripts/.docker_config/.healthcheck + sleep 1 + echo 'Done.' + echo 'Stopping ioBroker...' + pkill -u iobroker + sleep 1 + echo 'Done.' + echo 'Upgrading js-controller...' + iobroker update + iobroker upgrade self + sleep 1 + echo 'Done.' + echo 'Container will be stopped/ restarted in 5 seconds...' + sleep 5 + echo "stopping" > /opt/scripts/.docker_config/.healthcheck + pkill -u root + exit 0 + else + exit 0 + fi + elif [ "$autoconfirm" == "yes" ] + then + echo 'You are now going to upgrade your js-controller.' + echo 'As this will change data in /opt/iobroker, make sure you have a backup!' + echo 'During the upgrade process the container will automatically switch into maintenance mode and stop ioBroker.' + echo 'Depending of the restart policy, you container will be stoped/ restarted automatically after the upgrade.' + echo 'This command was already confirmed by -y or --yes option.' echo 'Activating maintenance mode...' echo "maintenance" > /opt/scripts/.docker_config/.healthcheck sleep 1 @@ -154,8 +184,6 @@ upgrade() { echo "stopping" > /opt/scripts/.docker_config/.healthcheck pkill -u root exit 0 - else - exit 0 fi } @@ -218,4 +246,4 @@ for i in $reverse; do esac done -exit 0 \ No newline at end of file +exit 0