Move migrating repository from frontend to backend (#6200)

* move migrating to backend

* add loading image when migrating and fix tests

* fix format

* fix lint

* add redis task queue support and improve docs

* add redis vendor

* fix vet

* add database migrations and fix app.ini sample

* add comments for task section on app.ini.sample

* Update models/migrations/v84.go

Co-Authored-By: lunny <xiaolunwen@gmail.com>

* Update models/repo.go

Co-Authored-By: lunny <xiaolunwen@gmail.com>

* move migrating to backend

* add loading image when migrating and fix tests

* fix fmt

* add redis task queue support and improve docs

* fix fixtures

* fix fixtures

* fix duplicate function on index.js

* fix tests

* rename repository statuses

* check if repository is being create when SSH request

* fix lint

* fix template

* some improvements

* fix template

* unified migrate options

* fix lint

* fix loading page

* refactor

* When gitea restart, don't restart the running tasks because we may have servel gitea instances, that may break the migration

* fix js

* Update models/repo.go

Co-Authored-By: guillep2k <18600385+guillep2k@users.noreply.github.com>

* Update docs/content/doc/advanced/config-cheat-sheet.en-us.md

Co-Authored-By: guillep2k <18600385+guillep2k@users.noreply.github.com>

* fix tests

* rename ErrTaskIsNotExist to ErrTaskDoesNotExist

* delete release after add one on tests to make it run happy

* fix tests

* fix tests

* improve codes

* fix lint

* fix lint

* fix migrations
This commit is contained in:
Lunny Xiao 2019-10-13 21:23:14 +08:00 committed by GitHub
parent 0a96e59884
commit f2a3abc683
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
37 changed files with 1192 additions and 222 deletions

BIN
public/img/loading.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

View file

@ -241,6 +241,41 @@ function updateIssuesMeta(url, action, issueIds, elementId) {
})
}
function initRepoStatusChecker() {
const migrating = $("#repo_migrating");
$('#repo_migrating_failed').hide();
if (migrating) {
const repo_name = migrating.attr('repo');
if (typeof repo_name === 'undefined') {
return
}
$.ajax({
type: "GET",
url: suburl +"/"+repo_name+"/status",
data: {
"_csrf": csrf,
},
complete: function(xhr) {
if (xhr.status == 200) {
if (xhr.responseJSON) {
if (xhr.responseJSON["status"] == 0) {
location.reload();
return
}
setTimeout(function () {
initRepoStatusChecker()
}, 2000);
return
}
}
$('#repo_migrating_progress').hide();
$('#repo_migrating_failed').show();
}
})
}
}
function initReactionSelector(parent) {
let reactions = '';
if (!parent) {
@ -2219,6 +2254,7 @@ $(document).ready(function () {
initIssueList();
initWipTitle();
initPullRequestReview();
initRepoStatusChecker();
// Repo clone url.
if ($('#repo-clone-url').length > 0) {