Skip to content
Snippets Groups Projects
Commit 8e7cff2e authored by Lukas Reschke's avatar Lukas Reschke Committed by GitHub
Browse files

Merge pull request #4805 from nextcloud/enforce-upgrade-for-big-instances

Allow to enforce update via web UI
parents bf0d966c 3fa604cc
No related branches found
No related tags found
No related merge requests found
......@@ -178,6 +178,17 @@ input.updateButton,
input.update-continue {
padding: 10px 20px; /* larger log in and installation buttons */
}
.updateAnyways a.updateAnywaysButton {
font-size: 14px;
padding: 10px 20px;
color: #666 !important;
display: inline-block;
border-radius: 3px;
margin: 15px 5px;
}
.updateAnyways a.updateAnywaysButton:hover {
color: #222 !important;
}
input.primary,
button.primary {
border: 1px solid #0082c9;
......@@ -442,6 +453,9 @@ form #selectDbType label.ui-state-active {
border-radius: 3px;
cursor: default;
}
.warning.updateAnyways {
text-align: center;
}
.warning legend,
.warning a,
.error a {
......
......@@ -11,4 +11,13 @@
print_unescaped($l->t('For help, see the <a target="_blank" rel="noreferrer" href="%s">documentation</a>.', [link_to_docs('admin-cli-upgrade')])); ?><br><br>
</div>
</div>
<?php if ($_['tooBig']) { ?>
<div class="warning updateAnyways">
<?php p($l->t('I know that if I continue doing the update via web UI has the risk, that the request runs into a timeout and could cause data loss, but I have a backup and know how to restore my instance in case of a failure.' )); ?>
<a href="?IKnowThatThisIsABigInstanceAndTheUpdateRequestCouldRunIntoATimeoutAndHowToRestoreABackup=IAmSuperSureToDoThis" class="button updateAnywaysButton"><?php p($l->t('Upgrade via web on my own risk' )); ?></a>
</div>
<?php } ?>
</div>
......@@ -343,7 +343,10 @@ class OC {
$tooBig = ($totalUsers > 50);
}
}
if ($disableWebUpdater || $tooBig) {
$ignoreTooBigWarning = isset($_GET['IKnowThatThisIsABigInstanceAndTheUpdateRequestCouldRunIntoATimeoutAndHowToRestoreABackup']) &&
$_GET['IKnowThatThisIsABigInstanceAndTheUpdateRequestCouldRunIntoATimeoutAndHowToRestoreABackup'] === 'IAmSuperSureToDoThis';
if ($disableWebUpdater || ($tooBig && !$ignoreTooBigWarning)) {
// send http status 503
header('HTTP/1.1 503 Service Temporarily Unavailable');
header('Status: 503 Service Temporarily Unavailable');
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment