Merge pull request #5920 from tgerdes/raw_blob_api
Add api support for raw blob search
This commit is contained in:
commit
a4000f5d45
3 changed files with 45 additions and 2 deletions
|
@ -343,9 +343,9 @@ Parameters:
|
|||
```
|
||||
|
||||
|
||||
## Raw blob content
|
||||
## Raw file content
|
||||
|
||||
Get the raw file contents for a file.
|
||||
Get the raw file contents for a file by commit sha and path.
|
||||
|
||||
```
|
||||
GET /projects/:id/repository/blobs/:sha
|
||||
|
@ -358,6 +358,20 @@ Parameters:
|
|||
+ `filepath` (required) - The path the file
|
||||
|
||||
|
||||
## Raw blob content
|
||||
|
||||
Get the raw file contents for a blob by blob sha.
|
||||
|
||||
```
|
||||
GET /projects/:id/repository/raw_blobs/:sha
|
||||
```
|
||||
|
||||
Parameters:
|
||||
|
||||
+ `id` (required) - The ID of a project
|
||||
+ `sha` (required) - The blob sha
|
||||
|
||||
|
||||
## Get file archive
|
||||
|
||||
Get a an archive of the repository
|
||||
|
|
|
@ -177,6 +177,28 @@ module API
|
|||
present blob.data
|
||||
end
|
||||
|
||||
# Get a raw blob contents by blob sha
|
||||
#
|
||||
# Parameters:
|
||||
# id (required) - The ID of a project
|
||||
# sha (required) - The blob's sha
|
||||
# Example Request:
|
||||
# GET /projects/:id/repository/raw_blobs/:sha
|
||||
get ":id/repository/raw_blobs/:sha" do
|
||||
ref = params[:sha]
|
||||
|
||||
repo = user_project.repository
|
||||
|
||||
blob = Gitlab::Git::Blob.raw(repo, ref)
|
||||
|
||||
not_found! "Blob" unless blob
|
||||
|
||||
env['api.format'] = :txt
|
||||
|
||||
content_type blob.mime_type
|
||||
present blob.data
|
||||
end
|
||||
|
||||
# Get a an archive of the repository
|
||||
#
|
||||
# Parameters:
|
||||
|
|
|
@ -225,6 +225,13 @@ describe API::API do
|
|||
end
|
||||
end
|
||||
|
||||
describe "GET /projects/:id/repository/raw_blobs/:sha" do
|
||||
it "should get the raw file contents" do
|
||||
get api("/projects/#{project.id}/repository/raw_blobs/d1aff2896d99d7acc4d9780fbb716b113c45ecf7", user)
|
||||
response.status.should == 200
|
||||
end
|
||||
end
|
||||
|
||||
describe "GET /projects/:id/repository/archive/:sha" do
|
||||
it "should get the archive" do
|
||||
get api("/projects/#{project.id}/repository/archive", user)
|
||||
|
|
Loading…
Reference in a new issue