Fix Swagger JSON autogeneration issues. (#4845)

* Fix Swagger JSON.

Remove unnecessary schema references for the forbidden and empty responses

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Fix swagger API for CreateAccessToken

* Fix admin create org swagger

* Fix swagger for adminCreateRepo

* More swagger fixes

Set int64 format for those which are int64
Some more form fixes

* Fix swagger description of GET /repos/{owner}/{repo}/pulls
This commit is contained in:
zeripath 2018-10-21 04:40:42 +01:00 committed by techknowlogick
parent 9b2fcadeef
commit 43f9233914
23 changed files with 298 additions and 66 deletions

View file

@ -28,6 +28,10 @@ func CreateOrg(ctx *context.APIContext, form api.CreateOrgOption) {
// description: username of the user that will own the created organization
// type: string
// required: true
// - name: organization
// in: body
// required: true
// schema: { "$ref": "#/definitions/CreateOrgOption" }
// responses:
// "201":
// "$ref": "#/responses/Organization"

View file

@ -27,6 +27,10 @@ func CreateRepo(ctx *context.APIContext, form api.CreateRepoOption) {
// description: username of the user. This user will own the created repository
// type: string
// required: true
// - name: repository
// in: body
// required: true
// schema: { "$ref": "#/definitions/CreateRepoOption" }
// responses:
// "201":
// "$ref": "#/responses/Repository"

View file

@ -228,6 +228,10 @@ func CreatePublicKey(ctx *context.APIContext, form api.CreateKeyOption) {
// description: username of the user
// type: string
// required: true
// - name: key
// in: body
// schema:
// "$ref": "#/definitions/CreateKeyOption"
// responses:
// "201":
// "$ref": "#/responses/PublicKey"
@ -259,6 +263,7 @@ func DeleteUserPublicKey(ctx *context.APIContext) {
// in: path
// description: id of the key to delete
// type: integer
// format: int64
// required: true
// responses:
// "204":

View file

@ -59,6 +59,7 @@ func GetHook(ctx *context.APIContext) {
// in: path
// description: id of the hook to get
// type: integer
// format: int64
// required: true
// responses:
// "200":
@ -87,6 +88,11 @@ func CreateHook(ctx *context.APIContext, form api.CreateHookOption) {
// description: name of the organization
// type: string
// required: true
// - name: body
// in: body
// required: true
// schema:
// "$ref": "#/definitions/CreateHookOption"
// responses:
// "201":
// "$ref": "#/responses/Hook"
@ -117,7 +123,12 @@ func EditHook(ctx *context.APIContext, form api.EditHookOption) {
// in: path
// description: id of the hook to update
// type: integer
// format: int64
// required: true
// - name: body
// in: body
// schema:
// "$ref": "#/definitions/EditHookOption"
// responses:
// "200":
// "$ref": "#/responses/Hook"
@ -144,6 +155,7 @@ func DeleteHook(ctx *context.APIContext) {
// in: path
// description: id of the hook to delete
// type: integer
// format: int64
// required: true
// responses:
// "204":

View file

@ -117,12 +117,8 @@ func IsMember(ctx *context.APIContext) {
// responses:
// "204":
// description: user is a member
// schema:
// "$ref": "#/responses/empty"
// "404":
// description: user is not a member
// schema:
// "$ref": "#/responses/empty"
userToCheck := user.GetUserByParams(ctx)
if ctx.Written() {
return
@ -172,12 +168,8 @@ func IsPublicMember(ctx *context.APIContext) {
// responses:
// "204":
// description: user is a public member
// schema:
// "$ref": "#/responses/empty"
// "404":
// description: user is not a public member
// schema:
// "$ref": "#/responses/empty"
userToCheck := user.GetUserByParams(ctx)
if ctx.Written() {
return
@ -210,8 +202,6 @@ func PublicizeMember(ctx *context.APIContext) {
// responses:
// "204":
// description: membership publicized
// schema:
// "$ref": "#/responses/empty"
userToPublicize := user.GetUserByParams(ctx)
if ctx.Written() {
return
@ -286,8 +276,6 @@ func DeleteMember(ctx *context.APIContext) {
// responses:
// "204":
// description: member removed
// schema:
// "$ref": "#/responses/empty"
member := user.GetUserByParams(ctx)
if ctx.Written() {
return

View file

@ -54,6 +54,7 @@ func GetTeam(ctx *context.APIContext) {
// in: path
// description: id of the team to get
// type: integer
// format: int64
// required: true
// responses:
// "200":
@ -144,12 +145,11 @@ func DeleteTeam(ctx *context.APIContext) {
// in: path
// description: id of the team to delete
// type: integer
// format: int64
// required: true
// responses:
// "204":
// description: team deleted
// schema:
// "$ref": "#/responses/empty"
if err := models.DeleteTeam(ctx.Org.Team); err != nil {
ctx.Error(500, "DeleteTeam", err)
return
@ -169,6 +169,7 @@ func GetTeamMembers(ctx *context.APIContext) {
// in: path
// description: id of the team
// type: integer
// format: int64
// required: true
// responses:
// "200":
@ -205,6 +206,7 @@ func AddTeamMember(ctx *context.APIContext) {
// in: path
// description: id of the team
// type: integer
// format: int64
// required: true
// - name: username
// in: path
@ -237,6 +239,7 @@ func RemoveTeamMember(ctx *context.APIContext) {
// in: path
// description: id of the team
// type: integer
// format: int64
// required: true
// - name: username
// in: path
@ -270,6 +273,7 @@ func GetTeamRepos(ctx *context.APIContext) {
// in: path
// description: id of the team
// type: integer
// format: int64
// required: true
// responses:
// "200":
@ -316,6 +320,7 @@ func AddTeamRepository(ctx *context.APIContext) {
// in: path
// description: id of the team
// type: integer
// format: int64
// required: true
// - name: org
// in: path
@ -362,6 +367,7 @@ func RemoveTeamRepository(ctx *context.APIContext) {
// in: path
// description: id of the team
// type: integer
// format: int64
// required: true
// - name: org
// in: path

View file

@ -69,6 +69,7 @@ func GetHook(ctx *context.APIContext) {
// in: path
// description: id of the hook to get
// type: integer
// format: int64
// required: true
// responses:
// "200":
@ -104,6 +105,7 @@ func TestHook(ctx *context.APIContext) {
// in: path
// description: id of the hook to test
// type: integer
// format: int64
// required: true
// responses:
// "204":
@ -193,6 +195,7 @@ func EditHook(ctx *context.APIContext, form api.EditHookOption) {
// in: path
// description: index of the hook
// type: integer
// format: int64
// required: true
// - name: body
// in: body
@ -227,6 +230,7 @@ func DeleteHook(ctx *context.APIContext) {
// in: path
// description: id of the hook to delete
// type: integer
// format: int64
// required: true
// responses:
// "204":

View file

@ -123,6 +123,7 @@ func GetIssue(ctx *context.APIContext) {
// in: path
// description: index of the issue to get
// type: integer
// format: int64
// required: true
// responses:
// "200":
@ -254,6 +255,7 @@ func EditIssue(ctx *context.APIContext, form api.EditIssueOption) {
// in: path
// description: index of the issue to edit
// type: integer
// format: int64
// required: true
// - name: body
// in: body
@ -377,6 +379,7 @@ func UpdateIssueDeadline(ctx *context.APIContext, form api.EditDeadlineOption) {
// in: path
// description: index of the issue to create or update a deadline on
// type: integer
// format: int64
// required: true
// - name: body
// in: body
@ -387,12 +390,8 @@ func UpdateIssueDeadline(ctx *context.APIContext, form api.EditDeadlineOption) {
// "$ref": "#/responses/IssueDeadline"
// "403":
// description: Not repo writer
// schema:
// "$ref": "#/responses/forbidden"
// "404":
// description: Issue not found
// schema:
// "$ref": "#/responses/empty"
issue, err := models.GetIssueByIndex(ctx.Repo.Repository.ID, ctx.ParamsInt64(":index"))
if err != nil {

View file

@ -36,6 +36,7 @@ func ListIssueComments(ctx *context.APIContext) {
// in: path
// description: index of the issue
// type: integer
// format: int64
// required: true
// - name: since
// in: query
@ -144,6 +145,7 @@ func CreateIssueComment(ctx *context.APIContext, form api.CreateIssueCommentOpti
// in: path
// description: index of the issue
// type: integer
// format: int64
// required: true
// - name: body
// in: body
@ -193,6 +195,7 @@ func EditIssueComment(ctx *context.APIContext, form api.EditIssueCommentOption)
// in: path
// description: id of the comment to edit
// type: integer
// format: int64
// required: true
// - name: body
// in: body
@ -234,6 +237,7 @@ func EditIssueCommentDeprecated(ctx *context.APIContext, form api.EditIssueComme
// in: path
// description: id of the comment to edit
// type: integer
// format: int64
// required: true
// - name: body
// in: body
@ -293,6 +297,7 @@ func DeleteIssueComment(ctx *context.APIContext) {
// in: path
// description: id of comment to delete
// type: integer
// format: int64
// required: true
// responses:
// "204":
@ -326,6 +331,7 @@ func DeleteIssueCommentDeprecated(ctx *context.APIContext) {
// in: path
// description: id of comment to delete
// type: integer
// format: int64
// required: true
// responses:
// "204":

View file

@ -33,6 +33,7 @@ func ListIssueLabels(ctx *context.APIContext) {
// in: path
// description: index of the issue
// type: integer
// format: int64
// required: true
// responses:
// "200":
@ -80,6 +81,7 @@ func AddIssueLabels(ctx *context.APIContext, form api.IssueLabelsOption) {
// in: path
// description: index of the issue
// type: integer
// format: int64
// required: true
// - name: body
// in: body
@ -149,11 +151,13 @@ func DeleteIssueLabel(ctx *context.APIContext) {
// in: path
// description: index of the issue
// type: integer
// format: int64
// required: true
// - name: id
// in: path
// description: id of the label to remove
// type: integer
// format: int64
// required: true
// responses:
// "204":
@ -215,6 +219,7 @@ func ReplaceIssueLabels(ctx *context.APIContext, form api.IssueLabelsOption) {
// in: path
// description: index of the issue
// type: integer
// format: int64
// required: true
// - name: body
// in: body
@ -284,6 +289,7 @@ func ClearIssueLabels(ctx *context.APIContext) {
// in: path
// description: index of the issue
// type: integer
// format: int64
// required: true
// responses:
// "204":

View file

@ -41,6 +41,7 @@ func ListTrackedTimes(ctx *context.APIContext) {
// in: path
// description: index of the issue
// type: integer
// format: int64
// required: true
// responses:
// "200":
@ -92,6 +93,7 @@ func AddTime(ctx *context.APIContext, form api.AddTimeOption) {
// in: path
// description: index of the issue to add tracked time to
// type: integer
// format: int64
// required: true
// - name: body
// in: body

View file

@ -81,6 +81,7 @@ func GetDeployKey(ctx *context.APIContext) {
// in: path
// description: id of the key to get
// type: integer
// format: int64
// required: true
// responses:
// "200":
@ -191,6 +192,7 @@ func DeleteDeploykey(ctx *context.APIContext) {
// in: path
// description: id of the key to delete
// type: integer
// format: int64
// required: true
// responses:
// "204":

View file

@ -69,6 +69,7 @@ func GetLabel(ctx *context.APIContext) {
// in: path
// description: id of the label to get
// type: integer
// format: int64
// required: true
// responses:
// "200":
@ -163,6 +164,7 @@ func EditLabel(ctx *context.APIContext, form api.EditLabelOption) {
// in: path
// description: id of the label to edit
// type: integer
// format: int64
// required: true
// - name: body
// in: body
@ -219,6 +221,7 @@ func DeleteLabel(ctx *context.APIContext) {
// in: path
// description: id of the label to delete
// type: integer
// format: int64
// required: true
// responses:
// "204":

View file

@ -70,6 +70,7 @@ func GetMilestone(ctx *context.APIContext) {
// in: path
// description: id of the milestone
// type: integer
// format: int64
// required: true
// responses:
// "200":
@ -156,6 +157,7 @@ func EditMilestone(ctx *context.APIContext, form api.EditMilestoneOption) {
// in: path
// description: id of the milestone
// type: integer
// format: int64
// required: true
// - name: body
// in: body
@ -211,6 +213,7 @@ func DeleteMilestone(ctx *context.APIContext) {
// in: path
// description: id of the milestone to delete
// type: integer
// format: int64
// required: true
// responses:
// "204":

View file

@ -38,6 +38,33 @@ func ListPullRequests(ctx *context.APIContext, form api.ListPullRequestsOptions)
// description: name of the repo
// type: string
// required: true
// - name: page
// in: query
// description: Page number
// type: integer
// - name: state
// in: query
// description: "State of pull request: open or closed (optional)"
// type: string
// enum: [closed, open, all]
// - name: sort
// in: query
// description: "Type of sort"
// type: string
// enum: [oldest, recentupdate, leastupdate, mostcomment, leastcomment, priority]
// - name: milestone
// in: query
// description: "ID of the milestone"
// type: integer
// format: int64
// - name: labels
// in: query
// description: "Label IDs"
// type: array
// collectionFormat: multi
// items:
// type: integer
// format: int64
// responses:
// "200":
// "$ref": "#/responses/PullRequestList"
@ -101,6 +128,7 @@ func GetPullRequest(ctx *context.APIContext) {
// in: path
// description: index of the pull request to get
// type: integer
// format: int64
// required: true
// responses:
// "200":
@ -301,6 +329,7 @@ func EditPullRequest(ctx *context.APIContext, form api.EditPullRequestOption) {
// in: path
// description: index of the pull request to edit
// type: integer
// format: int64
// required: true
// - name: body
// in: body
@ -430,16 +459,13 @@ func IsPullRequestMerged(ctx *context.APIContext) {
// in: path
// description: index of the pull request
// type: integer
// format: int64
// required: true
// responses:
// "204":
// description: pull request has been merged
// schema:
// "$ref": "#/responses/empty"
// "404":
// description: pull request has not been merged
// schema:
// "$ref": "#/responses/empty"
pr, err := models.GetPullRequestByIndex(ctx.Repo.Repository.ID, ctx.ParamsInt64(":index"))
if err != nil {
if models.IsErrPullRequestNotExist(err) {
@ -478,6 +504,7 @@ func MergePullRequest(ctx *context.APIContext, form auth.MergePullRequestForm) {
// in: path
// description: index of the pull request to merge
// type: integer
// format: int64
// required: true
// responses:
// "200":

View file

@ -33,6 +33,7 @@ func GetRelease(ctx *context.APIContext) {
// in: path
// description: id of the release to get
// type: integer
// format: int64
// required: true
// responses:
// "200":
@ -199,6 +200,7 @@ func EditRelease(ctx *context.APIContext, form api.EditReleaseOption) {
// in: path
// description: id of the release to edit
// type: integer
// format: int64
// required: true
// - name: body
// in: body
@ -278,6 +280,7 @@ func DeleteRelease(ctx *context.APIContext) {
// in: path
// description: id of the release to delete
// type: integer
// format: int64
// required: true
// responses:
// "204":

View file

@ -38,11 +38,13 @@ func GetReleaseAttachment(ctx *context.APIContext) {
// in: path
// description: id of the release
// type: integer
// format: int64
// required: true
// - name: attachment_id
// in: path
// description: id of the attachment to get
// type: integer
// format: int64
// required: true
// responses:
// "200":
@ -84,6 +86,7 @@ func ListReleaseAttachments(ctx *context.APIContext) {
// in: path
// description: id of the release
// type: integer
// format: int64
// required: true
// responses:
// "200":
@ -129,6 +132,7 @@ func CreateReleaseAttachment(ctx *context.APIContext) {
// in: path
// description: id of the release
// type: integer
// format: int64
// required: true
// - name: name
// in: query
@ -233,11 +237,13 @@ func EditReleaseAttachment(ctx *context.APIContext, form api.EditAttachmentOptio
// in: path
// description: id of the release
// type: integer
// format: int64
// required: true
// - name: attachment_id
// in: path
// description: id of the attachment to edit
// type: integer
// format: int64
// required: true
// - name: body
// in: body
@ -292,11 +298,13 @@ func DeleteReleaseAttachment(ctx *context.APIContext) {
// in: path
// description: id of the release
// type: integer
// format: int64
// required: true
// - name: attachment_id
// in: path
// description: id of the attachment to delete
// type: integer
// format: int64
// required: true
// responses:
// "204":

View file

@ -53,6 +53,7 @@ func Search(ctx *context.APIContext) {
// in: query
// description: search only for repos that the user with the given id owns or contributes to
// type: integer
// format: int64
// - name: page
// in: query
// description: page number of results to return (1-based)
@ -453,6 +454,7 @@ func GetByID(ctx *context.APIContext) {
// in: path
// description: id of the repo to get
// type: integer
// format: int64
// required: true
// responses:
// "200":

View file

@ -60,6 +60,15 @@ func CreateAccessToken(ctx *context.APIContext, form api.CreateAccessTokenOption
// description: username of user
// type: string
// required: true
// - name: accessToken
// in: body
// schema:
// type: object
// required:
// - name
// properties:
// name:
// type: string
// responses:
// "200":
// "$ref": "#/responses/AccessToken"
@ -95,6 +104,7 @@ func DeleteAccessToken(ctx *context.APIContext) {
// in: path
// description: token to be deleted
// type: integer
// format: int64
// required: true
// responses:
// "204":

View file

@ -80,6 +80,7 @@ func GetGPGKey(ctx *context.APIContext) {
// in: path
// description: id of key to get
// type: integer
// format: int64
// required: true
// responses:
// "200":
@ -143,6 +144,7 @@ func DeleteGPGKey(ctx *context.APIContext) {
// in: path
// description: id of key to delete
// type: integer
// format: int64
// required: true
// responses:
// "204":

View file

@ -101,6 +101,7 @@ func GetPublicKey(ctx *context.APIContext) {
// in: path
// description: id of key to get
// type: integer
// format: int64
// required: true
// responses:
// "200":
@ -172,6 +173,7 @@ func DeletePublicKey(ctx *context.APIContext) {
// in: path
// description: id of key to delete
// type: integer
// format: int64
// required: true
// responses:
// "204":

View file

@ -31,6 +31,7 @@ func Search(ctx *context.APIContext) {
// in: query
// description: ID of the user to search for
// type: integer
// format: int64
// - name: limit
// in: query
// description: maximum number of users to return