]> source.dussan.org Git - gitea.git/commitdiff
Add undocumented endpoint for /repositories/:id
authorKim "BKC" Carlbäcker <kim.carlbacker@gmail.com>
Mon, 3 Oct 2016 10:35:42 +0000 (12:35 +0200)
committerKim "BKC" Carlbäcker <kim.carlbacker@gmail.com>
Fri, 2 Dec 2016 08:18:15 +0000 (09:18 +0100)
routers/api/v1/api.go
routers/api/v1/repo/repo.go

index 95bdfd072e6d3f578d79e1ac14fc7c629783bbf1..506a61562460c323eca38b48ffc27992c301ab10 100644 (file)
@@ -243,6 +243,8 @@ func RegisterRoutes(m *macaron.Macaron) {
                        m.Get("/search", repo.Search)
                })
 
+               m.Combo("/repositories/:id", reqToken()).Get(repo.GetByID)
+
                m.Group("/repos", func() {
                        m.Post("/migrate", bind(auth.MigrateRepoForm{}), repo.Migrate)
                        m.Combo("/:username/:reponame", context.ExtractOwnerAndRepo()).
index 1fa0b14b40624e66d865770f71c5493d008f4c89..33d474ebd8a78bc55de56658c84cc6b7a2f6f96b 100644 (file)
@@ -251,6 +251,21 @@ func Get(ctx *context.APIContext) {
        ctx.JSON(200, repo.APIFormat(&api.Permission{true, true, true}))
 }
 
+// GetByID returns a single Repository
+func GetByID(ctx *context.APIContext) {
+       repo, err := models.GetRepositoryByID(ctx.ParamsInt64(":id"))
+       if err != nil {
+               if models.IsErrRepoNotExist(err) {
+                       ctx.Status(404)
+               } else {
+                       ctx.Error(500, "GetRepositoryByID", err)
+               }
+               return
+       }
+
+       ctx.JSON(200, repo.APIFormat(&api.Permission{true, true, true}))
+}
+
 // Delete delete one repository
 // see https://github.com/gogits/go-gogs-client/wiki/Repositories#delete
 func Delete(ctx *context.APIContext) {