summaryrefslogtreecommitdiffstats
path: root/routers/api/v1/repo/repo.go
diff options
context:
space:
mode:
authorJonas <cez81@users.noreply.github.com>2017-04-19 13:09:49 +0200
committerLunny Xiao <xiaolunwen@gmail.com>2017-04-19 19:09:49 +0800
commitf995bcc87a9e693883292247ec985df7541d06bf (patch)
tree8c79f03907977b80f373648419abb11226af6280 /routers/api/v1/repo/repo.go
parent2eeae84cbd80544157a82c7f031489eaaceaa873 (diff)
downloadgitea-f995bcc87a9e693883292247ec985df7541d06bf.tar.gz
gitea-f995bcc87a9e693883292247ec985df7541d06bf.zip
Add repo mirror sync API endpoint (#1508)
* API: Add repo mirror sync * Correct error message * Change http status to 200
Diffstat (limited to 'routers/api/v1/repo/repo.go')
-rw-r--r--routers/api/v1/repo/repo.go12
1 files changed, 12 insertions, 0 deletions
diff --git a/routers/api/v1/repo/repo.go b/routers/api/v1/repo/repo.go
index 317b0c57a1..0f22eaeb8f 100644
--- a/routers/api/v1/repo/repo.go
+++ b/routers/api/v1/repo/repo.go
@@ -269,3 +269,15 @@ func Delete(ctx *context.APIContext) {
log.Trace("Repository deleted: %s/%s", owner.Name, repo.Name)
ctx.Status(204)
}
+
+// MirrorSync adds a mirrored repository to the sync queue
+func MirrorSync(ctx *context.APIContext) {
+ repo := ctx.Repo.Repository
+
+ if !ctx.Repo.IsWriter() {
+ ctx.Error(403, "MirrorSync", "Must have write access")
+ }
+
+ go models.MirrorQueue.Add(repo.ID)
+ ctx.Status(200)
+}