diff options
author | Vincent Petry <pvince81@owncloud.com> | 2014-06-30 16:48:03 +0400 |
---|---|---|
committer | Vincent Petry <pvince81@owncloud.com> | 2014-06-30 16:48:03 +0400 |
commit | 2e45eb8ad69d8978220e0b3ea4314545cb08fa6f (patch) | |
tree | 7f87217a074919e39fdbd40ca5efb315c47804e0 | |
parent | fa7446d86de1817df38597eeebf2e5803e0c4cdd (diff) |
Return 503 in public.php and OCS API when upgrade is due
To prevent unexpected behavior, public.php and the OCS API calls will
return 503 Service Unavailable when an upgrade is due.
-rw-r--r-- | ocs/v1.php | 8 | ||||
-rw-r--r-- | public.php | 8 |
2 files changed, 16 insertions, 0 deletions
diff --git a/ocs/v1.php b/ocs/v1.php index d69904fc495..624355a8501 100644 --- a/ocs/v1.php +++ b/ocs/v1.php @@ -23,6 +23,14 @@ require_once '../lib/base.php'; +if (\OCP\Util::needUpgrade()) { + // since the behavior of apps or remotes are unpredictable during + // an upgrade, return a 503 directly + OC_Response::setStatus(OC_Response::STATUS_SERVICE_UNAVAILABLE); + OC_Template::printErrorPage('Service unavailable'); + exit; +} + use Symfony\Component\Routing\Exception\ResourceNotFoundException; use Symfony\Component\Routing\Exception\MethodNotAllowedException; diff --git a/public.php b/public.php index eed63948112..1f858fd073d 100644 --- a/public.php +++ b/public.php @@ -3,6 +3,14 @@ try { require_once 'lib/base.php'; + if (\OCP\Util::needUpgrade()) { + // since the behavior of apps or remotes are unpredictable during + // an upgrade, return a 503 directly + OC_Response::setStatus(OC_Response::STATUS_SERVICE_UNAVAILABLE); + OC_Template::printErrorPage('Service unavailable'); + exit; + } + OC::checkMaintenanceMode(); OC::checkSingleUserMode(); $pathInfo = OC_Request::getPathInfo(); |