From 6a933f8f3f7ebe2d47f111057c57a747ae89495a Mon Sep 17 00:00:00 2001 From: David Beniamine <david.beniamine@tetras-libre.fr> Date: Tue, 29 Aug 2017 11:06:34 +0200 Subject: [PATCH] Do security upgrades via upgradeAll.sh --- main.env.sample | 2 ++ upgradeAll.sh | 12 +++++++++--- upgradeDolibarr.sh | 6 ++++++ 3 files changed, 17 insertions(+), 3 deletions(-) diff --git a/main.env.sample b/main.env.sample index 4787449..184cb6a 100644 --- a/main.env.sample +++ b/main.env.sample @@ -1,4 +1,6 @@ export MODS="Base MySQL Nextcloud Dolibarr TetrasBack" +# Valid levels are security and upgrade +export MAINTENANCE_LEVEL="security" export DOMAIN="dev.tetras-libre.fr" export SERVER_ADMIN="admin@dev.tetras-libre.fr" # can be set to nginx diff --git a/upgradeAll.sh b/upgradeAll.sh index 9ce073a..1eedd9b 100644 --- a/upgradeAll.sh +++ b/upgradeAll.sh @@ -16,15 +16,21 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. -aptitude update && aptitude upgrade DIR=`dirname $0` . $DIR/main.env . $DIR/installNextcloud.env -if [ -z "$MODS" ] +if [ -z "$MODS" ] || [ -z "$MAINTENANCE_LEVEL" ] then - echo "Please update your main.env to list the installed modules" + echo "Please update your main.env" exit 1 fi +aptitude update +if [ "$MAINTENANCE_LEVEL" == "upgrade" ] +then + aptitude upgrade +else + unattended-upgrade +fi for mod in $MODS do script="$DIR/upgrade$mod.sh" diff --git a/upgradeDolibarr.sh b/upgradeDolibarr.sh index 235cdcf..3e413e6 100644 --- a/upgradeDolibarr.sh +++ b/upgradeDolibarr.sh @@ -22,6 +22,12 @@ then echo "Dolibarr not installed, aborting" exit 1 fi +if [ "$MAINTENANCE_LEVEL" == "security" ] && [ "$1" != "force" ] +then + echo "Dolibar upgrade is disabled for security mode, to for upgrade, run:" + echo -e "\t$0 force" + exit 1 +fi git pull current_version=`apt-cache policy dolibarr | grep Installed | awk '{print $2}'` echo "Current version of Dolibarr: $current_version" -- GitLab