Skip to content

Commit f64cd02

Browse files
committed
Add button to delete undeleted repositories from failed migrations
This PR adds a button to delete failed repositories if there has been a failure during migration and for whatever reason the repository doesn't get deleted automatically. Fix #16154 Signed-off-by: Andrew Thornton <[email protected]>
1 parent 59f2558 commit f64cd02

File tree

2 files changed

+41
-0
lines changed

2 files changed

+41
-0
lines changed

routers/web/repo/view.go

+2
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ import (
2929
"code.gitea.io/gitea/modules/log"
3030
"code.gitea.io/gitea/modules/markup"
3131
"code.gitea.io/gitea/modules/setting"
32+
"code.gitea.io/gitea/modules/structs"
3233
"code.gitea.io/gitea/modules/typesniffer"
3334
)
3435

@@ -621,6 +622,7 @@ func Home(ctx *context.Context) {
621622
ctx.Data["Repo"] = ctx.Repo
622623
ctx.Data["MigrateTask"] = task
623624
ctx.Data["CloneAddr"] = safeURL(cfg.CloneAddr)
625+
ctx.Data["Failed"] = task.Status == structs.TaskStatusFailed
624626
ctx.HTML(http.StatusOK, tplMigrating)
625627
return
626628
}

templates/repo/migrate/migrating.tmpl

+39
Original file line numberDiff line numberDiff line change
@@ -28,11 +28,50 @@
2828
<p>{{.i18n.Tr "repo.migrate.migrating_failed" .CloneAddr | Safe}}</p>
2929
<p id="repo_migrating_failed_error"></p>
3030
</div>
31+
{{if and .Failed .Permission.IsAdmin}}
32+
<div class="ui divider"></div>
33+
<div class="item">
34+
<button class="ui basic red show-modal button" data-modal="#delete-repo-modal">{{.i18n.Tr "repo.settings.delete"}}</button>
35+
</div>
36+
{{end}}
3137
</div>
3238
</div>
3339
</div>
3440
</div>
3541
</div>
3642
</div>
3743
</div>
44+
<div class="ui small modal" id="delete-repo-modal">
45+
<div class="header">
46+
{{.i18n.Tr "repo.settings.delete"}}
47+
</div>
48+
<div class="content">
49+
<div class="ui warning message text left">
50+
{{.i18n.Tr "repo.settings.delete_notices_1" | Safe}}<br>
51+
{{.i18n.Tr "repo.settings.delete_notices_2" .Repository.FullName | Safe}}
52+
{{if .Repository.NumForks}}<br>
53+
{{.i18n.Tr "repo.settings.delete_notices_fork_1"}}
54+
{{end}}
55+
</div>
56+
<form class="ui form" action="{{.Link}}/settings" method="post">
57+
{{.CsrfTokenHtml}}
58+
<input type="hidden" name="action" value="delete">
59+
<div class="field">
60+
<label>
61+
{{.i18n.Tr "repo.settings.transfer_form_title"}}
62+
<span class="text red">{{.Repository.Name}}</span>
63+
</label>
64+
</div>
65+
<div class="required field">
66+
<label for="repo_name">{{.i18n.Tr "repo.repo_name"}}</label>
67+
<input id="repo_name" name="repo_name" required>
68+
</div>
69+
70+
<div class="text right actions">
71+
<div class="ui cancel button">{{.i18n.Tr "settings.cancel"}}</div>
72+
<button class="ui red button">{{.i18n.Tr "repo.settings.confirm_delete"}}</button>
73+
</div>
74+
</form>
75+
</div>
76+
</div>
3877
{{template "base/footer" .}}

0 commit comments

Comments
 (0)