#!/bin/bash
if [ -e /srv/www/vhosts/nextcloud/pending_upgrade ] ; then
  /usr/sbin/nextcloud-fix-permissions
  if [ -s /srv/www/vhosts/nextcloud/public//config/config.php ] ; then
     echo "Starting nextcloud upgrade: $(date --iso-8601=seconds)"                                               >> /var/log/nextcloud//upgrade.log 2>&1 ||:
     perl -p -i.backup -e 's|^.*config_is_read_only.*$||g' /srv/www/vhosts/nextcloud/public/config/config.php     >> /var/log/nextcloud//upgrade.log 2>&1 ||:
     diff -u /srv/www/vhosts/nextcloud/public/config/config.php{.backup,}                                         >> /var/log/nextcloud//upgrade.log 2>&1 ||:
     rm -vf /srv/www/vhosts/nextcloud/public/config/config.php.backup                                             >> /var/log/nextcloud//upgrade.log 2>&1 ||:
     /usr/sbin/nextcloud-occ maintenance:mode --on                                             --no-interaction >> /var/log/nextcloud//upgrade.log 2>&1 ||:
     /usr/sbin/nextcloud-occ upgrade                                                           --no-interaction >> /var/log/nextcloud//upgrade.log 2>&1 ||:
     /usr/sbin/nextcloud-occ db:add-missing-columns                                            --no-interaction >> /var/log/nextcloud//upgrade.log 2>&1 ||:
     /usr/sbin/nextcloud-occ db:add-missing-primary-keys                                       --no-interaction >> /var/log/nextcloud//upgrade.log 2>&1 ||:
     /usr/sbin/nextcloud-occ db:add-missing-indices                                            --no-interaction >> /var/log/nextcloud//upgrade.log 2>&1 ||:
     /usr/sbin/nextcloud-occ db:convert-filecache-bigint                                       --no-interaction >> /var/log/nextcloud//upgrade.log 2>&1 ||:
     /usr/sbin/nextcloud-occ maintenance:update:htaccess                                       --no-interaction >> /var/log/nextcloud//upgrade.log 2>&1 ||:
     /usr/sbin/nextcloud-occ maintenance:mode --off                                            --no-interaction >> /var/log/nextcloud//upgrade.log 2>&1 ||:
     /usr/sbin/nextcloud-occ config:system:set config_is_read_only --type boolean --value true --no-interaction >> /var/log/nextcloud//upgrade.log 2>&1 ||:
  fi
  rm /srv/www/vhosts/nextcloud/pending_upgrade
fi
