fix stuck progress at 80% - part deux

This commit is contained in:
Andy Miller
2025-10-16 21:28:43 -06:00
parent ca657708f3
commit 4a2b386b51
3 changed files with 138 additions and 33 deletions

View File

@@ -4923,7 +4923,9 @@ var SafeUpgrade = /*#__PURE__*/function () {
}
this.pollTimer = null;
var nextStage = null;
var shouldContinue = true;
var jobComplete = false;
var jobFailed = false;
var shouldReload = false;
console.debug('[SafeUpgrade] poll status');
var statusUrl = this.jobId ? "".concat(this.urls.status, "?job=").concat(encodeURIComponent(this.jobId)) : this.urls.status;
this.statusRequest = utils_request(statusUrl, function (response) {
@@ -4937,6 +4939,7 @@ var SafeUpgrade = /*#__PURE__*/function () {
});
}
nextStage = 'error';
jobFailed = true;
return;
}
var payload = response.data || {};
@@ -4945,19 +4948,31 @@ var SafeUpgrade = /*#__PURE__*/function () {
nextStage = data.stage || null;
_this6.renderProgress(data, job);
if (job.status === 'error') {
shouldContinue = false;
nextStage = 'error';
var message = job.error || data.message || t('SAFE_UPGRADE_GENERIC_ERROR', 'Safe upgrade could not complete. See Grav logs for details.');
_this6.renderResult({
status: 'error',
message: message
});
} else if (job.status === 'success' && data.stage === 'complete') {
shouldContinue = false;
nextStage = 'complete';
if (job.result) {
_this6.renderResult(job.result);
_this6.renderProgress({
stage: 'error',
message: message,
percent: null
}, job);
jobFailed = true;
} else if (job.status === 'success') {
if (data.stage !== 'complete') {
var completePayload = {
stage: 'complete',
message: t('SAFE_UPGRADE_STAGE_COMPLETE', 'Upgrade complete'),
percent: 100,
target_version: job.result && job.result.version || data.target_version || null,
manifest: job.result && job.result.manifest || data.manifest || null
};
_this6.renderProgress(completePayload, job);
nextStage = 'complete';
}
jobComplete = true;
shouldReload = true;
} else if (!job.status && data.stage === 'complete') {
jobComplete = true;
shouldReload = true;
}
});
var finalize = function finalize() {
@@ -4965,19 +4980,19 @@ var SafeUpgrade = /*#__PURE__*/function () {
if (!_this6.isPolling) {
return;
}
if (nextStage === 'complete' || nextStage === 'error') {
if (jobFailed) {
_this6.stopPolling();
_this6.jobId = null;
if (nextStage === 'complete') {
} else if (jobComplete || nextStage === 'complete') {
_this6.stopPolling();
_this6.jobId = null;
if (shouldReload) {
setTimeout(function () {
return window.location.reload();
}, 2500);
}
} else if (shouldContinue) {
_this6.schedulePoll();
} else {
_this6.stopPolling();
_this6.jobId = null;
_this6.schedulePoll();
}
};
this.statusRequest.then(finalize, finalize);
@@ -14246,4 +14261,4 @@ external_jQuery_default()(__webpack_require__.g).on('sidebar_state._grav', funct
/******/ Grav = __webpack_exports__;
/******/
/******/ })()
;
;