aboutsummaryrefslogtreecommitdiff
path: root/internal/route/api/v1/api.go
Commit message (Collapse)AuthorAge
* api: add admin endpoint to get team members (#6101)Rui Santos2020-04-15
| | | fixes #5877
* lfs: implement HTTP routes (#6035)ᴜɴᴋɴᴡᴏɴ2020-04-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Bootstrap with GORM * Fix lint error * Set conn max lifetime to one minute * Fallback to use gorm v1 * Define HTTP routes * Finish authentication * Save token updated * Add docstring * Finish authorization * serveBatch rundown * Define types in lfsutil * Finish Batch * authutil * Finish basic * Formalize response error * Fix lint errors * authutil: add tests * dbutil: add tests * lfsutil: add tests * strutil: add tests * Formalize 401 response
* api: support get releases endpoint (#6026)Philidor Green2020-03-28
|
* refactor: unify error handling in routing layerᴜɴᴋɴᴡᴏɴ2020-03-16
|
* api: group "/contents" with "" and "/*" #5985 (#5986)Bharat Nallan2020-03-13
| | | | | | | | | | | | | This PR groups the contents api endpoint with both `""` and `/*` as valid URL patterns. When `""` is the URL pattern, this means that no repo path has'nt been provided, in which case the path would be the default repo path. When `"/*"` is the URL pattern, then this would return the contents at the specified path if it's valid. Github API v3 is conformant to this behavior and have verified it locally.
* api: minor changes to `/repo/owner/repo/git/trees` (#5982)ᴜɴᴋɴᴡᴏɴ2020-03-11
|
* api: overhaul `/repos/owner/repos/contents` (#5980)ᴜɴᴋɴᴡᴏɴ2020-03-10
| | | | | * Fix import path renaming * api: overhaul /repos/owner/repos/contents
* api: `GET /repos/:owner/:repo/contents/:path` (#5963)ᴜɴᴋɴᴡᴏɴ2020-03-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * support API `GET /repos/:owner/:repo/contents/:path` This PR adds support to #5949: `GET /repos/:owner/:repo/contents/:path` Curl: ```bash curl -H "Authorization: token REDACTED" http://localhost:3000/api/v1/repos/root/testrepo/contents//master/README.md -X GET | jq . ``` Curl Response: ```bash { "type": "blob", "size": 12, "name": "README.md", "path": "README.md", "sha": "70fcb456d436f08462602f26df6fb7e167e7a916", "url": "http://localhost:3000/api/v1/repos/root/testrepo/contents/README.md", "git_url": "http://localhost:3000/api/v1/repos/root/testrepo/trees/70fcb456d436f08462602f26df6fb7e167e7a916", "html_url": "http://localhost:3000/api/v1/repos/root/testrepo/tree/70fcb456d436f08462602f26df6fb7e167e7a916", "download_url": "http://localhost:3000/api/v1/root/testrepo/raw/README.md", "_links": { "git": "http://localhost:3000/api/v1/repos/root/testrepo/trees/70fcb456d436f08462602f26df6fb7e167e7a916", "self": "http://localhost:3000/api/v1/repos/root/testrepo/contents/README.md", "html": "http://localhost:3000/api/v1/repos/root/testrepo/tree/70fcb456d436f08462602f26df6fb7e167e7a916" }, "content": "IyB0ZXN0cmVwbwoK" } ``` * rename - path.go to contents.go * reorder imports Co-Authored-By: ᴜɴᴋɴᴡᴏɴ <u@gogs.io> * rename struct to repoContents and fix field order Co-Authored-By: ᴜɴᴋɴᴡᴏɴ <u@gogs.io> * rename variable Co-Authored-By: ᴜɴᴋɴᴡᴏɴ <u@gogs.io> * rename GetPathContents to GetContents Co-Authored-By: ᴜɴᴋɴᴡᴏɴ <u@gogs.io> * return on server error Co-Authored-By: ᴜɴᴋɴᴡᴏɴ <u@gogs.io> * resolve conflicts introduced via git web ui * make constants as method variables * handle dir type case last * fix func and var names * implement suggested changes in review * refactor smaller funcs to be part of GetContent * fix content type check for blob after refactoring * changes based on suggestions * read full file, return empty json array * don't set submoduleURL * set server err msg to method name * set target to be blob data for symlinks * Update contents.go Co-authored-by: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>
* api: support getting repository Git tree (#5934) (#5937)Bharat Nallan2020-02-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * add basic git repository tree api (#5934) This PR adds the tree api endpoint to gogs api: `GET/repos/:owner/:repo/git/trees/:tree_sha` This new api endpoint that is being added is in conformance to the GitHub REST API v3 specification. Documentation can be found here: developer.github.com/v3/git/trees/#get-a-tree For a given user, repo and sha value, this api (currently) returns a single tree using the SHA1 value for that tree. - Recursive implementation is yet to be implemented. - Creating a Tree using POST is yet to be implemented. Example curl: ``` l curl -H "Authorization: token REDACTED" http://localhost:3000/api/v1/repos/root/testrepo/git/trees/c59441ded1549b149def0d4c54594d31a7f3718f -X GET | jq . % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 940 100 940 0 0 12034 0 --:--:-- --:--:-- --:--:-- 12051 [ { "sha": "c59441ded1549b149def0d4c54594d31a7f3718f", "tree": [ { "mode": "120000", "path": "/home/bharatnc/gogs-repositories/root/testrepo.git", "sha": "472ac2361b65136b393d652de25341e2ea44f299", "size": 1077, "type": "blob", "url": "http://localhost:3000/api/v1/repos/root/testrepo/git/trees/472ac2361b65136b393d652de25341e2ea44f299" }, { "mode": "120000", "path": "/home/bharatnc/gogs-repositories/root/testrepo.git", "sha": "70fcb456d436f08462602f26df6fb7e167e7a916", "size": 12, "type": "blob", "url": "http://localhost:3000/api/v1/repos/root/testrepo/git/trees/70fcb456d436f08462602f26df6fb7e167e7a916" }, { "mode": "120000", "path": "/home/bharatnc/gogs-repositories/root/testrepo.git", "sha": "092c58d4b63df5779a4d020b1fdbb762421bbb4f", "size": 380, "type": "blob", "url": "http://localhost:3000/api/v1/repos/root/testrepo/git/trees/092c58d4b63df5779a4d020b1fdbb762421bbb4f" } ], "url": "http://localhost:3000/api/v1/repos/root/testrepo/git/trees/c59441ded1549b149def0d4c54594d31a7f3718f" } ] ``` * remove vertical space * make go.mod to be same as in master * rename structs to sound better * simplify expressions and fix error msg * Update tree.go * Update tree.go * display file name instead of repo path * Update tree.go Co-authored-by: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>
* internal: move packages under this directory (#5836)Unknwon2019-10-24
* Rename pkg -> internal * Rename routes -> route * Move route -> internal/route * Rename models -> db * Move db -> internal/db * Fix route2 -> route * Move cmd -> internal/cmd * Bump version