Store task errors following migrations and display them (#13246)

* Store task errors following migrations and display them

When migrate tasks fail store the error in the task table
and ensure that they show on the status page.

Fix #13242

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Update web_src/js/index.js

* Hide the failed first

Signed-off-by: Andrew Thornton <art27@cantab.net>

Co-authored-by: techknowlogick <techknowlogick@gitea.io>
This commit is contained in:
zeripath 2020-10-24 00:46:35 +01:00 committed by GitHub
parent 9b11c3e320
commit f40a2a4404
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
8 changed files with 95 additions and 41 deletions

View file

@ -192,25 +192,32 @@ function updateIssuesMeta(url, action, issueIds, elementId) {
function initRepoStatusChecker() {
const migrating = $('#repo_migrating');
$('#repo_migrating_failed').hide();
$('#repo_migrating_failed_image').hide();
if (migrating) {
const repo_name = migrating.attr('repo');
if (typeof repo_name === 'undefined') {
const task = migrating.attr('task');
if (typeof task === 'undefined') {
return;
}
$.ajax({
type: 'GET',
url: `${AppSubUrl}/${repo_name}/status`,
url: `${AppSubUrl}/user/task/${task}`,
data: {
_csrf: csrf,
},
complete(xhr) {
if (xhr.status === 200) {
if (xhr.responseJSON) {
if (xhr.responseJSON.status === 0) {
if (xhr.responseJSON.status === 4) {
window.location.reload();
return;
} else if (xhr.responseJSON.status === 3) {
$('#repo_migrating_progress').hide();
$('#repo_migrating').hide();
$('#repo_migrating_failed').show();
$('#repo_migrating_failed_image').show();
$('#repo_migrating_failed_error').text(xhr.responseJSON.err);
return;
}
setTimeout(() => {
initRepoStatusChecker();
}, 2000);
@ -218,7 +225,9 @@ function initRepoStatusChecker() {
}
}
$('#repo_migrating_progress').hide();
$('#repo_migrating').hide();
$('#repo_migrating_failed').show();
$('#repo_migrating_failed_image').show();
}
});
}