Improve swagger doc (#67)
* Add some swagger response type * Add some swagger parameters * Add some swagger parameters * Use HookList in place of []*Hook
This commit is contained in:
parent
82df6bc38d
commit
bc243ad6c2
6 changed files with 91 additions and 38 deletions
|
@ -11,13 +11,21 @@ import (
|
||||||
)
|
)
|
||||||
|
|
||||||
// CreateUserOption create user options
|
// CreateUserOption create user options
|
||||||
|
// swagger:parameters adminCreateUser
|
||||||
type CreateUserOption struct {
|
type CreateUserOption struct {
|
||||||
|
// in: body
|
||||||
SourceID int64 `json:"source_id"`
|
SourceID int64 `json:"source_id"`
|
||||||
|
// in: body
|
||||||
LoginName string `json:"login_name"`
|
LoginName string `json:"login_name"`
|
||||||
|
// in: body
|
||||||
Username string `json:"username" binding:"Required;AlphaDashDot;MaxSize(35)"`
|
Username string `json:"username" binding:"Required;AlphaDashDot;MaxSize(35)"`
|
||||||
|
// in: body
|
||||||
FullName string `json:"full_name" binding:"MaxSize(100)"`
|
FullName string `json:"full_name" binding:"MaxSize(100)"`
|
||||||
|
// in: body
|
||||||
Email string `json:"email" binding:"Required;Email;MaxSize(254)"`
|
Email string `json:"email" binding:"Required;Email;MaxSize(254)"`
|
||||||
|
// in: body
|
||||||
Password string `json:"password" binding:"MaxSize(255)"`
|
Password string `json:"password" binding:"MaxSize(255)"`
|
||||||
|
// in: body
|
||||||
SendNotify bool `json:"send_notify"`
|
SendNotify bool `json:"send_notify"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -32,18 +40,31 @@ func (c *Client) AdminCreateUser(opt CreateUserOption) (*User, error) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// EditUserOption edit user options
|
// EditUserOption edit user options
|
||||||
|
// swagger:parameters adminEditUser
|
||||||
type EditUserOption struct {
|
type EditUserOption struct {
|
||||||
|
// in: body
|
||||||
SourceID int64 `json:"source_id"`
|
SourceID int64 `json:"source_id"`
|
||||||
|
// in: body
|
||||||
LoginName string `json:"login_name"`
|
LoginName string `json:"login_name"`
|
||||||
|
// in: body
|
||||||
FullName string `json:"full_name" binding:"MaxSize(100)"`
|
FullName string `json:"full_name" binding:"MaxSize(100)"`
|
||||||
|
// in: body
|
||||||
Email string `json:"email" binding:"Required;Email;MaxSize(254)"`
|
Email string `json:"email" binding:"Required;Email;MaxSize(254)"`
|
||||||
|
// in: body
|
||||||
Password string `json:"password" binding:"MaxSize(255)"`
|
Password string `json:"password" binding:"MaxSize(255)"`
|
||||||
|
// in: body
|
||||||
Website string `json:"website" binding:"MaxSize(50)"`
|
Website string `json:"website" binding:"MaxSize(50)"`
|
||||||
|
// in: body
|
||||||
Location string `json:"location" binding:"MaxSize(50)"`
|
Location string `json:"location" binding:"MaxSize(50)"`
|
||||||
|
// in: body
|
||||||
Active *bool `json:"active"`
|
Active *bool `json:"active"`
|
||||||
|
// in: body
|
||||||
Admin *bool `json:"admin"`
|
Admin *bool `json:"admin"`
|
||||||
|
// in: body
|
||||||
AllowGitHook *bool `json:"allow_git_hook"`
|
AllowGitHook *bool `json:"allow_git_hook"`
|
||||||
|
// in: body
|
||||||
AllowImportLocal *bool `json:"allow_import_local"`
|
AllowImportLocal *bool `json:"allow_import_local"`
|
||||||
|
// in: body
|
||||||
MaxRepoCreation *int `json:"max_repo_creation"`
|
MaxRepoCreation *int `json:"max_repo_creation"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -20,7 +20,9 @@ func (c *Client) ListForks(user, repo string) ([]*Repository, error) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// CreateForkOption options for creating a fork
|
// CreateForkOption options for creating a fork
|
||||||
|
// swagger:parameters createFork
|
||||||
type CreateForkOption struct {
|
type CreateForkOption struct {
|
||||||
|
// in: body
|
||||||
Organization *string `json:"organization"`
|
Organization *string `json:"organization"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -20,6 +20,7 @@ var (
|
||||||
)
|
)
|
||||||
|
|
||||||
// Hook a hook is a web hook when one repository changed
|
// Hook a hook is a web hook when one repository changed
|
||||||
|
// swagger:response Hook
|
||||||
type Hook struct {
|
type Hook struct {
|
||||||
ID int64 `json:"id"`
|
ID int64 `json:"id"`
|
||||||
Type string `json:"type"`
|
Type string `json:"type"`
|
||||||
|
@ -31,14 +32,18 @@ type Hook struct {
|
||||||
Created time.Time `json:"created_at"`
|
Created time.Time `json:"created_at"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// HookList represents a list of API hook.
|
||||||
|
// swagger:response HookList
|
||||||
|
type HookList []*Hook
|
||||||
|
|
||||||
// ListOrgHooks list all the hooks of one organization
|
// ListOrgHooks list all the hooks of one organization
|
||||||
func (c *Client) ListOrgHooks(org string) ([]*Hook, error) {
|
func (c *Client) ListOrgHooks(org string) (HookList, error) {
|
||||||
hooks := make([]*Hook, 0, 10)
|
hooks := make([]*Hook, 0, 10)
|
||||||
return hooks, c.getParsedResponse("GET", fmt.Sprintf("/orgs/%s/hooks", org), nil, nil, &hooks)
|
return hooks, c.getParsedResponse("GET", fmt.Sprintf("/orgs/%s/hooks", org), nil, nil, &hooks)
|
||||||
}
|
}
|
||||||
|
|
||||||
// ListRepoHooks list all the hooks of one repository
|
// ListRepoHooks list all the hooks of one repository
|
||||||
func (c *Client) ListRepoHooks(user, repo string) ([]*Hook, error) {
|
func (c *Client) ListRepoHooks(user, repo string) (HookList, error) {
|
||||||
hooks := make([]*Hook, 0, 10)
|
hooks := make([]*Hook, 0, 10)
|
||||||
return hooks, c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/hooks", user, repo), nil, nil, &hooks)
|
return hooks, c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/hooks", user, repo), nil, nil, &hooks)
|
||||||
}
|
}
|
||||||
|
@ -56,10 +61,15 @@ func (c *Client) GetRepoHook(user, repo string, id int64) (*Hook, error) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// CreateHookOption options when create a hook
|
// CreateHookOption options when create a hook
|
||||||
|
// swagger:parameters orgCreateHook repoCreateHook
|
||||||
type CreateHookOption struct {
|
type CreateHookOption struct {
|
||||||
|
// in: body
|
||||||
Type string `json:"type" binding:"Required"`
|
Type string `json:"type" binding:"Required"`
|
||||||
|
// in: body
|
||||||
Config map[string]string `json:"config" binding:"Required"`
|
Config map[string]string `json:"config" binding:"Required"`
|
||||||
|
// in: body
|
||||||
Events []string `json:"events"`
|
Events []string `json:"events"`
|
||||||
|
// in: body
|
||||||
Active bool `json:"active"`
|
Active bool `json:"active"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -84,9 +94,13 @@ func (c *Client) CreateRepoHook(user, repo string, opt CreateHookOption) (*Hook,
|
||||||
}
|
}
|
||||||
|
|
||||||
// EditHookOption options when modify one hook
|
// EditHookOption options when modify one hook
|
||||||
|
// swagger:parameters orgEditHook repoEditHook
|
||||||
type EditHookOption struct {
|
type EditHookOption struct {
|
||||||
|
// in: body
|
||||||
Config map[string]string `json:"config"`
|
Config map[string]string `json:"config"`
|
||||||
|
// in: body
|
||||||
Events []string `json:"events"`
|
Events []string `json:"events"`
|
||||||
|
// in: body
|
||||||
Active *bool `json:"active"`
|
Active *bool `json:"active"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -11,6 +11,7 @@ import (
|
||||||
)
|
)
|
||||||
|
|
||||||
// Organization a group of some repositories, users and teams
|
// Organization a group of some repositories, users and teams
|
||||||
|
// swagger:response Organization
|
||||||
type Organization struct {
|
type Organization struct {
|
||||||
ID int64 `json:"id"`
|
ID int64 `json:"id"`
|
||||||
UserName string `json:"username"`
|
UserName string `json:"username"`
|
||||||
|
@ -40,11 +41,17 @@ func (c *Client) GetOrg(orgname string) (*Organization, error) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// CreateOrgOption create one organization options
|
// CreateOrgOption create one organization options
|
||||||
|
// swagger:parameters adminCreateOrg
|
||||||
type CreateOrgOption struct {
|
type CreateOrgOption struct {
|
||||||
|
// in: body
|
||||||
UserName string `json:"username" binding:"Required"`
|
UserName string `json:"username" binding:"Required"`
|
||||||
|
// in: body
|
||||||
FullName string `json:"full_name"`
|
FullName string `json:"full_name"`
|
||||||
|
// in: body
|
||||||
Description string `json:"description"`
|
Description string `json:"description"`
|
||||||
|
// in: body
|
||||||
Website string `json:"website"`
|
Website string `json:"website"`
|
||||||
|
// in: body
|
||||||
Location string `json:"location"`
|
Location string `json:"location"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -69,7 +69,7 @@ func (c *Client) ListOrgRepos(org string) ([]*Repository, error) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// CreateRepoOption options when creating repository
|
// CreateRepoOption options when creating repository
|
||||||
//swagger:parameters createOrgRepo
|
//swagger:parameters createOrgRepo adminCreateRepo createCurrentUserRepo
|
||||||
type CreateRepoOption struct {
|
type CreateRepoOption struct {
|
||||||
// Name of the repository to create
|
// Name of the repository to create
|
||||||
//
|
//
|
||||||
|
@ -135,14 +135,23 @@ func (c *Client) DeleteRepo(owner, repo string) error {
|
||||||
}
|
}
|
||||||
|
|
||||||
// MigrateRepoOption options when migrate repository from an external place
|
// MigrateRepoOption options when migrate repository from an external place
|
||||||
|
// swagger:parameters repoMigrate
|
||||||
type MigrateRepoOption struct {
|
type MigrateRepoOption struct {
|
||||||
|
// in: body
|
||||||
CloneAddr string `json:"clone_addr" binding:"Required"`
|
CloneAddr string `json:"clone_addr" binding:"Required"`
|
||||||
|
// in: body
|
||||||
AuthUsername string `json:"auth_username"`
|
AuthUsername string `json:"auth_username"`
|
||||||
|
// in: body
|
||||||
AuthPassword string `json:"auth_password"`
|
AuthPassword string `json:"auth_password"`
|
||||||
|
// in: body
|
||||||
UID int `json:"uid" binding:"Required"`
|
UID int `json:"uid" binding:"Required"`
|
||||||
|
// in: body
|
||||||
RepoName string `json:"repo_name" binding:"Required"`
|
RepoName string `json:"repo_name" binding:"Required"`
|
||||||
|
// in: body
|
||||||
Mirror bool `json:"mirror"`
|
Mirror bool `json:"mirror"`
|
||||||
|
// in: body
|
||||||
Private bool `json:"private"`
|
Private bool `json:"private"`
|
||||||
|
// in: body
|
||||||
Description string `json:"description"`
|
Description string `json:"description"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -34,7 +34,7 @@ func (c *Client) GetDeployKey(user, repo string, keyID int64) (*DeployKey, error
|
||||||
}
|
}
|
||||||
|
|
||||||
// CreateKeyOption options when create deploy key
|
// CreateKeyOption options when create deploy key
|
||||||
// swagger:parameters userCurrentPostKey
|
// swagger:parameters userCurrentPostKey adminCreatePublicKey
|
||||||
type CreateKeyOption struct {
|
type CreateKeyOption struct {
|
||||||
// Title of the key to add
|
// Title of the key to add
|
||||||
//
|
//
|
||||||
|
|
Loading…
Reference in a new issue