This change adds the ability to filter the list of entities returned by the API by entity owner, name or endpoint, depending on the entity type. Signed-off-by: Gabriel Adrian Samfira <gsamfira@cloudbasesolutions.com>
2280 lines
78 KiB
YAML
2280 lines
78 KiB
YAML
basePath: /api/v1
|
|
consumes:
|
|
- application/json
|
|
definitions:
|
|
APIErrorResponse:
|
|
type: object
|
|
x-go-type:
|
|
import:
|
|
alias: apiserver_params
|
|
package: github.com/cloudbase/garm/apiserver/params
|
|
type: APIErrorResponse
|
|
ControllerInfo:
|
|
type: object
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: ControllerInfo
|
|
CreateEnterpriseParams:
|
|
type: object
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: CreateEnterpriseParams
|
|
CreateGiteaCredentialsParams:
|
|
type: object
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: CreateGiteaCredentialsParams
|
|
CreateGiteaEndpointParams:
|
|
type: object
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: CreateGiteaEndpointParams
|
|
CreateGithubCredentialsParams:
|
|
type: object
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: CreateGithubCredentialsParams
|
|
CreateGithubEndpointParams:
|
|
type: object
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: CreateGithubEndpointParams
|
|
CreateInstanceParams:
|
|
type: object
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: CreateInstanceParams
|
|
CreateOrgParams:
|
|
type: object
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: CreateOrgParams
|
|
CreatePoolParams:
|
|
type: object
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: CreatePoolParams
|
|
CreateRepoParams:
|
|
type: object
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: CreateRepoParams
|
|
CreateScaleSetParams:
|
|
type: object
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: CreateScaleSetParams
|
|
Credentials:
|
|
items:
|
|
$ref: '#/definitions/ForgeCredentials'
|
|
type: array
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: Credentials
|
|
Enterprise:
|
|
type: object
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: Enterprise
|
|
Enterprises:
|
|
items:
|
|
$ref: '#/definitions/Enterprise'
|
|
type: array
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: Enterprises
|
|
ForgeCredentials:
|
|
type: object
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: ForgeCredentials
|
|
ForgeEndpoint:
|
|
type: object
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: ForgeEndpoint
|
|
ForgeEndpoints:
|
|
items:
|
|
$ref: '#/definitions/ForgeEndpoint'
|
|
type: array
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: ForgeEndpoints
|
|
HookInfo:
|
|
type: object
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: HookInfo
|
|
InstallWebhookParams:
|
|
type: object
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: InstallWebhookParams
|
|
Instance:
|
|
type: object
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: Instance
|
|
Instances:
|
|
items:
|
|
$ref: '#/definitions/Instance'
|
|
type: array
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: Instances
|
|
JWTResponse:
|
|
type: object
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: JWTResponse
|
|
Job:
|
|
type: object
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: Job
|
|
Jobs:
|
|
items:
|
|
$ref: '#/definitions/Job'
|
|
type: array
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: Jobs
|
|
NewUserParams:
|
|
type: object
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: NewUserParams
|
|
Organization:
|
|
type: object
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: Organization
|
|
Organizations:
|
|
items:
|
|
$ref: '#/definitions/Organization'
|
|
type: array
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: Organizations
|
|
PasswordLoginParams:
|
|
type: object
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: PasswordLoginParams
|
|
Pool:
|
|
type: object
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: Pool
|
|
Pools:
|
|
items:
|
|
$ref: '#/definitions/Pool'
|
|
type: array
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: Pools
|
|
Provider:
|
|
type: object
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: Provider
|
|
Providers:
|
|
items:
|
|
$ref: '#/definitions/Provider'
|
|
type: array
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: Providers
|
|
Repositories:
|
|
items:
|
|
$ref: '#/definitions/Repository'
|
|
type: array
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: Repositories
|
|
Repository:
|
|
type: object
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: Repository
|
|
ScaleSet:
|
|
type: object
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: ScaleSet
|
|
ScaleSets:
|
|
items:
|
|
$ref: '#/definitions/ScaleSet'
|
|
type: array
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: ScaleSets
|
|
UpdateControllerParams:
|
|
type: object
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: UpdateControllerParams
|
|
UpdateEntityParams:
|
|
type: object
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: UpdateEntityParams
|
|
UpdateGiteaCredentialsParams:
|
|
type: object
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: UpdateGiteaCredentialsParams
|
|
UpdateGiteaEndpointParams:
|
|
type: object
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: UpdateGiteaEndpointParams
|
|
UpdateGithubCredentialsParams:
|
|
type: object
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: UpdateGithubCredentialsParams
|
|
UpdateGithubEndpointParams:
|
|
type: object
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: UpdateGithubEndpointParams
|
|
UpdatePoolParams:
|
|
type: object
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: UpdatePoolParams
|
|
UpdateScaleSetParams:
|
|
type: object
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: UpdateScaleSetParams
|
|
User:
|
|
type: object
|
|
x-go-type:
|
|
import:
|
|
alias: garm_params
|
|
package: github.com/cloudbase/garm/params
|
|
type: User
|
|
info:
|
|
description: The Garm API generated using go-swagger.
|
|
license:
|
|
name: Apache 2.0
|
|
url: https://www.apache.org/licenses/LICENSE-2.0
|
|
title: Garm API.
|
|
version: 1.0.0
|
|
paths:
|
|
/auth/login:
|
|
post:
|
|
operationId: Login
|
|
parameters:
|
|
- description: Login information.
|
|
in: body
|
|
name: Body
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/PasswordLoginParams'
|
|
description: Login information.
|
|
type: object
|
|
responses:
|
|
"200":
|
|
description: JWTResponse
|
|
schema:
|
|
$ref: '#/definitions/JWTResponse'
|
|
"400":
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Logs in a user and returns a JWT token.
|
|
tags:
|
|
- login
|
|
/controller:
|
|
put:
|
|
operationId: UpdateController
|
|
parameters:
|
|
- description: Parameters used when updating the controller.
|
|
in: body
|
|
name: Body
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/UpdateControllerParams'
|
|
description: Parameters used when updating the controller.
|
|
type: object
|
|
responses:
|
|
"200":
|
|
description: ControllerInfo
|
|
schema:
|
|
$ref: '#/definitions/ControllerInfo'
|
|
"400":
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Update controller.
|
|
tags:
|
|
- controller
|
|
/controller-info:
|
|
get:
|
|
operationId: ControllerInfo
|
|
responses:
|
|
"200":
|
|
description: ControllerInfo
|
|
schema:
|
|
$ref: '#/definitions/ControllerInfo'
|
|
"409":
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Get controller info.
|
|
tags:
|
|
- controllerInfo
|
|
/enterprises:
|
|
get:
|
|
operationId: ListEnterprises
|
|
parameters:
|
|
- description: Exact enterprise name to filter by
|
|
in: query
|
|
name: name
|
|
type: string
|
|
- description: Exact endpoint name to filter by
|
|
in: query
|
|
name: endpoint
|
|
type: string
|
|
responses:
|
|
"200":
|
|
description: Enterprises
|
|
schema:
|
|
$ref: '#/definitions/Enterprises'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: List all enterprises.
|
|
tags:
|
|
- enterprises
|
|
post:
|
|
operationId: CreateEnterprise
|
|
parameters:
|
|
- description: Parameters used to create the enterprise.
|
|
in: body
|
|
name: Body
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/CreateEnterpriseParams'
|
|
description: Parameters used to create the enterprise.
|
|
type: object
|
|
responses:
|
|
"200":
|
|
description: Enterprise
|
|
schema:
|
|
$ref: '#/definitions/Enterprise'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Create enterprise with the given parameters.
|
|
tags:
|
|
- enterprises
|
|
/enterprises/{enterpriseID}:
|
|
delete:
|
|
operationId: DeleteEnterprise
|
|
parameters:
|
|
- description: ID of the enterprise to delete.
|
|
in: path
|
|
name: enterpriseID
|
|
required: true
|
|
type: string
|
|
responses:
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Delete enterprise by ID.
|
|
tags:
|
|
- enterprises
|
|
get:
|
|
operationId: GetEnterprise
|
|
parameters:
|
|
- description: The ID of the enterprise to fetch.
|
|
in: path
|
|
name: enterpriseID
|
|
required: true
|
|
type: string
|
|
responses:
|
|
"200":
|
|
description: Enterprise
|
|
schema:
|
|
$ref: '#/definitions/Enterprise'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Get enterprise by ID.
|
|
tags:
|
|
- enterprises
|
|
put:
|
|
operationId: UpdateEnterprise
|
|
parameters:
|
|
- description: The ID of the enterprise to update.
|
|
in: path
|
|
name: enterpriseID
|
|
required: true
|
|
type: string
|
|
- description: Parameters used when updating the enterprise.
|
|
in: body
|
|
name: Body
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/UpdateEntityParams'
|
|
description: Parameters used when updating the enterprise.
|
|
type: object
|
|
responses:
|
|
"200":
|
|
description: Enterprise
|
|
schema:
|
|
$ref: '#/definitions/Enterprise'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Update enterprise with the given parameters.
|
|
tags:
|
|
- enterprises
|
|
/enterprises/{enterpriseID}/instances:
|
|
get:
|
|
operationId: ListEnterpriseInstances
|
|
parameters:
|
|
- description: Enterprise ID.
|
|
in: path
|
|
name: enterpriseID
|
|
required: true
|
|
type: string
|
|
responses:
|
|
"200":
|
|
description: Instances
|
|
schema:
|
|
$ref: '#/definitions/Instances'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: List enterprise instances.
|
|
tags:
|
|
- enterprises
|
|
- instances
|
|
/enterprises/{enterpriseID}/pools:
|
|
get:
|
|
operationId: ListEnterprisePools
|
|
parameters:
|
|
- description: Enterprise ID.
|
|
in: path
|
|
name: enterpriseID
|
|
required: true
|
|
type: string
|
|
responses:
|
|
"200":
|
|
description: Pools
|
|
schema:
|
|
$ref: '#/definitions/Pools'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: List enterprise pools.
|
|
tags:
|
|
- enterprises
|
|
- pools
|
|
post:
|
|
operationId: CreateEnterprisePool
|
|
parameters:
|
|
- description: Enterprise ID.
|
|
in: path
|
|
name: enterpriseID
|
|
required: true
|
|
type: string
|
|
- description: Parameters used when creating the enterprise pool.
|
|
in: body
|
|
name: Body
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/CreatePoolParams'
|
|
description: Parameters used when creating the enterprise pool.
|
|
type: object
|
|
responses:
|
|
"200":
|
|
description: Pool
|
|
schema:
|
|
$ref: '#/definitions/Pool'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Create enterprise pool with the parameters given.
|
|
tags:
|
|
- enterprises
|
|
- pools
|
|
/enterprises/{enterpriseID}/pools/{poolID}:
|
|
delete:
|
|
operationId: DeleteEnterprisePool
|
|
parameters:
|
|
- description: Enterprise ID.
|
|
in: path
|
|
name: enterpriseID
|
|
required: true
|
|
type: string
|
|
- description: ID of the enterprise pool to delete.
|
|
in: path
|
|
name: poolID
|
|
required: true
|
|
type: string
|
|
responses:
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Delete enterprise pool by ID.
|
|
tags:
|
|
- enterprises
|
|
- pools
|
|
get:
|
|
operationId: GetEnterprisePool
|
|
parameters:
|
|
- description: Enterprise ID.
|
|
in: path
|
|
name: enterpriseID
|
|
required: true
|
|
type: string
|
|
- description: Pool ID.
|
|
in: path
|
|
name: poolID
|
|
required: true
|
|
type: string
|
|
responses:
|
|
"200":
|
|
description: Pool
|
|
schema:
|
|
$ref: '#/definitions/Pool'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Get enterprise pool by ID.
|
|
tags:
|
|
- enterprises
|
|
- pools
|
|
put:
|
|
operationId: UpdateEnterprisePool
|
|
parameters:
|
|
- description: Enterprise ID.
|
|
in: path
|
|
name: enterpriseID
|
|
required: true
|
|
type: string
|
|
- description: ID of the enterprise pool to update.
|
|
in: path
|
|
name: poolID
|
|
required: true
|
|
type: string
|
|
- description: Parameters used when updating the enterprise pool.
|
|
in: body
|
|
name: Body
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/UpdatePoolParams'
|
|
description: Parameters used when updating the enterprise pool.
|
|
type: object
|
|
responses:
|
|
"200":
|
|
description: Pool
|
|
schema:
|
|
$ref: '#/definitions/Pool'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Update enterprise pool with the parameters given.
|
|
tags:
|
|
- enterprises
|
|
- pools
|
|
/enterprises/{enterpriseID}/scalesets:
|
|
get:
|
|
operationId: ListEnterpriseScaleSets
|
|
parameters:
|
|
- description: Enterprise ID.
|
|
in: path
|
|
name: enterpriseID
|
|
required: true
|
|
type: string
|
|
responses:
|
|
"200":
|
|
description: ScaleSets
|
|
schema:
|
|
$ref: '#/definitions/ScaleSets'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: List enterprise scale sets.
|
|
tags:
|
|
- enterprises
|
|
- scalesets
|
|
post:
|
|
operationId: CreateEnterpriseScaleSet
|
|
parameters:
|
|
- description: Enterprise ID.
|
|
in: path
|
|
name: enterpriseID
|
|
required: true
|
|
type: string
|
|
- description: Parameters used when creating the enterprise scale set.
|
|
in: body
|
|
name: Body
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/CreateScaleSetParams'
|
|
description: Parameters used when creating the enterprise scale set.
|
|
type: object
|
|
responses:
|
|
"200":
|
|
description: ScaleSet
|
|
schema:
|
|
$ref: '#/definitions/ScaleSet'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Create enterprise pool with the parameters given.
|
|
tags:
|
|
- enterprises
|
|
- scalesets
|
|
/first-run:
|
|
post:
|
|
operationId: FirstRun
|
|
parameters:
|
|
- description: Create a new user.
|
|
in: body
|
|
name: Body
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/NewUserParams'
|
|
description: Create a new user.
|
|
type: object
|
|
responses:
|
|
"200":
|
|
description: User
|
|
schema:
|
|
$ref: '#/definitions/User'
|
|
"400":
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Initialize the first run of the controller.
|
|
tags:
|
|
- first-run
|
|
/gitea/credentials:
|
|
get:
|
|
operationId: ListGiteaCredentials
|
|
responses:
|
|
"200":
|
|
description: Credentials
|
|
schema:
|
|
$ref: '#/definitions/Credentials'
|
|
"400":
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: List all credentials.
|
|
tags:
|
|
- credentials
|
|
post:
|
|
operationId: CreateGiteaCredentials
|
|
parameters:
|
|
- description: Parameters used when creating a Gitea credential.
|
|
in: body
|
|
name: Body
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/CreateGiteaCredentialsParams'
|
|
description: Parameters used when creating a Gitea credential.
|
|
type: object
|
|
responses:
|
|
"200":
|
|
description: ForgeCredentials
|
|
schema:
|
|
$ref: '#/definitions/ForgeCredentials'
|
|
"400":
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Create a Gitea credential.
|
|
tags:
|
|
- credentials
|
|
/gitea/credentials/{id}:
|
|
delete:
|
|
operationId: DeleteGiteaCredentials
|
|
parameters:
|
|
- description: ID of the Gitea credential.
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: integer
|
|
responses:
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Delete a Gitea credential.
|
|
tags:
|
|
- credentials
|
|
get:
|
|
operationId: GetGiteaCredentials
|
|
parameters:
|
|
- description: ID of the Gitea credential.
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: integer
|
|
responses:
|
|
"200":
|
|
description: ForgeCredentials
|
|
schema:
|
|
$ref: '#/definitions/ForgeCredentials'
|
|
"400":
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Get a Gitea credential.
|
|
tags:
|
|
- credentials
|
|
put:
|
|
operationId: UpdateGiteaCredentials
|
|
parameters:
|
|
- description: ID of the Gitea credential.
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: integer
|
|
- description: Parameters used when updating a Gitea credential.
|
|
in: body
|
|
name: Body
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/UpdateGiteaCredentialsParams'
|
|
description: Parameters used when updating a Gitea credential.
|
|
type: object
|
|
responses:
|
|
"200":
|
|
description: ForgeCredentials
|
|
schema:
|
|
$ref: '#/definitions/ForgeCredentials'
|
|
"400":
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Update a Gitea credential.
|
|
tags:
|
|
- credentials
|
|
/gitea/endpoints:
|
|
get:
|
|
operationId: ListGiteaEndpoints
|
|
responses:
|
|
"200":
|
|
description: ForgeEndpoints
|
|
schema:
|
|
$ref: '#/definitions/ForgeEndpoints'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: List all Gitea Endpoints.
|
|
tags:
|
|
- endpoints
|
|
post:
|
|
operationId: CreateGiteaEndpoint
|
|
parameters:
|
|
- description: Parameters used when creating a Gitea endpoint.
|
|
in: body
|
|
name: Body
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/CreateGiteaEndpointParams'
|
|
description: Parameters used when creating a Gitea endpoint.
|
|
type: object
|
|
responses:
|
|
"200":
|
|
description: ForgeEndpoint
|
|
schema:
|
|
$ref: '#/definitions/ForgeEndpoint'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Create a Gitea Endpoint.
|
|
tags:
|
|
- endpoints
|
|
/gitea/endpoints/{name}:
|
|
delete:
|
|
operationId: DeleteGiteaEndpoint
|
|
parameters:
|
|
- description: The name of the Gitea endpoint.
|
|
in: path
|
|
name: name
|
|
required: true
|
|
type: string
|
|
responses:
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Delete a Gitea Endpoint.
|
|
tags:
|
|
- endpoints
|
|
get:
|
|
operationId: GetGiteaEndpoint
|
|
parameters:
|
|
- description: The name of the Gitea endpoint.
|
|
in: path
|
|
name: name
|
|
required: true
|
|
type: string
|
|
responses:
|
|
"200":
|
|
description: ForgeEndpoint
|
|
schema:
|
|
$ref: '#/definitions/ForgeEndpoint'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Get a Gitea Endpoint.
|
|
tags:
|
|
- endpoints
|
|
put:
|
|
operationId: UpdateGiteaEndpoint
|
|
parameters:
|
|
- description: The name of the Gitea endpoint.
|
|
in: path
|
|
name: name
|
|
required: true
|
|
type: string
|
|
- description: Parameters used when updating a Gitea endpoint.
|
|
in: body
|
|
name: Body
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/UpdateGiteaEndpointParams'
|
|
description: Parameters used when updating a Gitea endpoint.
|
|
type: object
|
|
responses:
|
|
"200":
|
|
description: ForgeEndpoint
|
|
schema:
|
|
$ref: '#/definitions/ForgeEndpoint'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Update a Gitea Endpoint.
|
|
tags:
|
|
- endpoints
|
|
/github/credentials:
|
|
get:
|
|
operationId: ListCredentials
|
|
responses:
|
|
"200":
|
|
description: Credentials
|
|
schema:
|
|
$ref: '#/definitions/Credentials'
|
|
"400":
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: List all credentials.
|
|
tags:
|
|
- credentials
|
|
post:
|
|
operationId: CreateCredentials
|
|
parameters:
|
|
- description: Parameters used when creating a GitHub credential.
|
|
in: body
|
|
name: Body
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/CreateGithubCredentialsParams'
|
|
description: Parameters used when creating a GitHub credential.
|
|
type: object
|
|
responses:
|
|
"200":
|
|
description: ForgeCredentials
|
|
schema:
|
|
$ref: '#/definitions/ForgeCredentials'
|
|
"400":
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Create a GitHub credential.
|
|
tags:
|
|
- credentials
|
|
/github/credentials/{id}:
|
|
delete:
|
|
operationId: DeleteCredentials
|
|
parameters:
|
|
- description: ID of the GitHub credential.
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: integer
|
|
responses:
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Delete a GitHub credential.
|
|
tags:
|
|
- credentials
|
|
get:
|
|
operationId: GetCredentials
|
|
parameters:
|
|
- description: ID of the GitHub credential.
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: integer
|
|
responses:
|
|
"200":
|
|
description: ForgeCredentials
|
|
schema:
|
|
$ref: '#/definitions/ForgeCredentials'
|
|
"400":
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Get a GitHub credential.
|
|
tags:
|
|
- credentials
|
|
put:
|
|
operationId: UpdateCredentials
|
|
parameters:
|
|
- description: ID of the GitHub credential.
|
|
in: path
|
|
name: id
|
|
required: true
|
|
type: integer
|
|
- description: Parameters used when updating a GitHub credential.
|
|
in: body
|
|
name: Body
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/UpdateGithubCredentialsParams'
|
|
description: Parameters used when updating a GitHub credential.
|
|
type: object
|
|
responses:
|
|
"200":
|
|
description: ForgeCredentials
|
|
schema:
|
|
$ref: '#/definitions/ForgeCredentials'
|
|
"400":
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Update a GitHub credential.
|
|
tags:
|
|
- credentials
|
|
/github/endpoints:
|
|
get:
|
|
operationId: ListGithubEndpoints
|
|
responses:
|
|
"200":
|
|
description: ForgeEndpoints
|
|
schema:
|
|
$ref: '#/definitions/ForgeEndpoints'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: List all GitHub Endpoints.
|
|
tags:
|
|
- endpoints
|
|
post:
|
|
operationId: CreateGithubEndpoint
|
|
parameters:
|
|
- description: Parameters used when creating a GitHub endpoint.
|
|
in: body
|
|
name: Body
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/CreateGithubEndpointParams'
|
|
description: Parameters used when creating a GitHub endpoint.
|
|
type: object
|
|
responses:
|
|
"200":
|
|
description: ForgeEndpoint
|
|
schema:
|
|
$ref: '#/definitions/ForgeEndpoint'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Create a GitHub Endpoint.
|
|
tags:
|
|
- endpoints
|
|
/github/endpoints/{name}:
|
|
delete:
|
|
operationId: DeleteGithubEndpoint
|
|
parameters:
|
|
- description: The name of the GitHub endpoint.
|
|
in: path
|
|
name: name
|
|
required: true
|
|
type: string
|
|
responses:
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Delete a GitHub Endpoint.
|
|
tags:
|
|
- endpoints
|
|
get:
|
|
operationId: GetGithubEndpoint
|
|
parameters:
|
|
- description: The name of the GitHub endpoint.
|
|
in: path
|
|
name: name
|
|
required: true
|
|
type: string
|
|
responses:
|
|
"200":
|
|
description: ForgeEndpoint
|
|
schema:
|
|
$ref: '#/definitions/ForgeEndpoint'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Get a GitHub Endpoint.
|
|
tags:
|
|
- endpoints
|
|
put:
|
|
operationId: UpdateGithubEndpoint
|
|
parameters:
|
|
- description: The name of the GitHub endpoint.
|
|
in: path
|
|
name: name
|
|
required: true
|
|
type: string
|
|
- description: Parameters used when updating a GitHub endpoint.
|
|
in: body
|
|
name: Body
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/UpdateGithubEndpointParams'
|
|
description: Parameters used when updating a GitHub endpoint.
|
|
type: object
|
|
responses:
|
|
"200":
|
|
description: ForgeEndpoint
|
|
schema:
|
|
$ref: '#/definitions/ForgeEndpoint'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Update a GitHub Endpoint.
|
|
tags:
|
|
- endpoints
|
|
/instances:
|
|
get:
|
|
operationId: ListInstances
|
|
responses:
|
|
"200":
|
|
description: Instances
|
|
schema:
|
|
$ref: '#/definitions/Instances'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Get all runners' instances.
|
|
tags:
|
|
- instances
|
|
/instances/{instanceName}:
|
|
delete:
|
|
operationId: DeleteInstance
|
|
parameters:
|
|
- description: Runner instance name.
|
|
in: path
|
|
name: instanceName
|
|
required: true
|
|
type: string
|
|
- description: If true GARM will ignore any provider error when removing the runner and will continue to remove the runner from github and the GARM database.
|
|
in: query
|
|
name: forceRemove
|
|
type: boolean
|
|
- description: If true GARM will ignore unauthorized errors returned by GitHub when removing a runner. This is useful if you want to clean up runners and your credentials have expired.
|
|
in: query
|
|
name: bypassGHUnauthorized
|
|
type: boolean
|
|
responses:
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Delete runner instance by name.
|
|
tags:
|
|
- instances
|
|
get:
|
|
operationId: GetInstance
|
|
parameters:
|
|
- description: Runner instance name.
|
|
in: path
|
|
name: instanceName
|
|
required: true
|
|
type: string
|
|
responses:
|
|
"200":
|
|
description: Instance
|
|
schema:
|
|
$ref: '#/definitions/Instance'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Get runner instance by name.
|
|
tags:
|
|
- instances
|
|
/jobs:
|
|
get:
|
|
operationId: ListJobs
|
|
responses:
|
|
"200":
|
|
description: Jobs
|
|
schema:
|
|
$ref: '#/definitions/Jobs'
|
|
"400":
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: List all jobs.
|
|
tags:
|
|
- jobs
|
|
/metrics-token:
|
|
get:
|
|
operationId: GetMetricsToken
|
|
responses:
|
|
"200":
|
|
description: JWTResponse
|
|
schema:
|
|
$ref: '#/definitions/JWTResponse'
|
|
"401":
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Returns a JWT token that can be used to access the metrics endpoint.
|
|
tags:
|
|
- metrics-token
|
|
/organizations:
|
|
get:
|
|
operationId: ListOrgs
|
|
parameters:
|
|
- description: Exact organization name to filter by
|
|
in: query
|
|
name: name
|
|
type: string
|
|
- description: Exact endpoint name to filter by
|
|
in: query
|
|
name: endpoint
|
|
type: string
|
|
responses:
|
|
"200":
|
|
description: Organizations
|
|
schema:
|
|
$ref: '#/definitions/Organizations'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: List organizations.
|
|
tags:
|
|
- organizations
|
|
post:
|
|
operationId: CreateOrg
|
|
parameters:
|
|
- description: Parameters used when creating the organization.
|
|
in: body
|
|
name: Body
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/CreateOrgParams'
|
|
description: Parameters used when creating the organization.
|
|
type: object
|
|
responses:
|
|
"200":
|
|
description: Organization
|
|
schema:
|
|
$ref: '#/definitions/Organization'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Create organization with the parameters given.
|
|
tags:
|
|
- organizations
|
|
/organizations/{orgID}:
|
|
delete:
|
|
operationId: DeleteOrg
|
|
parameters:
|
|
- description: ID of the organization to delete.
|
|
in: path
|
|
name: orgID
|
|
required: true
|
|
type: string
|
|
- description: If true and a webhook is installed for this organization, it will not be removed.
|
|
in: query
|
|
name: keepWebhook
|
|
type: boolean
|
|
responses:
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Delete organization by ID.
|
|
tags:
|
|
- organizations
|
|
get:
|
|
operationId: GetOrg
|
|
parameters:
|
|
- description: ID of the organization to fetch.
|
|
in: path
|
|
name: orgID
|
|
required: true
|
|
type: string
|
|
responses:
|
|
"200":
|
|
description: Organization
|
|
schema:
|
|
$ref: '#/definitions/Organization'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Get organization by ID.
|
|
tags:
|
|
- organizations
|
|
put:
|
|
operationId: UpdateOrg
|
|
parameters:
|
|
- description: ID of the organization to update.
|
|
in: path
|
|
name: orgID
|
|
required: true
|
|
type: string
|
|
- description: Parameters used when updating the organization.
|
|
in: body
|
|
name: Body
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/UpdateEntityParams'
|
|
description: Parameters used when updating the organization.
|
|
type: object
|
|
responses:
|
|
"200":
|
|
description: Organization
|
|
schema:
|
|
$ref: '#/definitions/Organization'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Update organization with the parameters given.
|
|
tags:
|
|
- organizations
|
|
/organizations/{orgID}/instances:
|
|
get:
|
|
operationId: ListOrgInstances
|
|
parameters:
|
|
- description: Organization ID.
|
|
in: path
|
|
name: orgID
|
|
required: true
|
|
type: string
|
|
responses:
|
|
"200":
|
|
description: Instances
|
|
schema:
|
|
$ref: '#/definitions/Instances'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: List organization instances.
|
|
tags:
|
|
- organizations
|
|
- instances
|
|
/organizations/{orgID}/pools:
|
|
get:
|
|
operationId: ListOrgPools
|
|
parameters:
|
|
- description: Organization ID.
|
|
in: path
|
|
name: orgID
|
|
required: true
|
|
type: string
|
|
responses:
|
|
"200":
|
|
description: Pools
|
|
schema:
|
|
$ref: '#/definitions/Pools'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: List organization pools.
|
|
tags:
|
|
- organizations
|
|
- pools
|
|
post:
|
|
operationId: CreateOrgPool
|
|
parameters:
|
|
- description: Organization ID.
|
|
in: path
|
|
name: orgID
|
|
required: true
|
|
type: string
|
|
- description: Parameters used when creating the organization pool.
|
|
in: body
|
|
name: Body
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/CreatePoolParams'
|
|
description: Parameters used when creating the organization pool.
|
|
type: object
|
|
responses:
|
|
"200":
|
|
description: Pool
|
|
schema:
|
|
$ref: '#/definitions/Pool'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Create organization pool with the parameters given.
|
|
tags:
|
|
- organizations
|
|
- pools
|
|
/organizations/{orgID}/pools/{poolID}:
|
|
delete:
|
|
operationId: DeleteOrgPool
|
|
parameters:
|
|
- description: Organization ID.
|
|
in: path
|
|
name: orgID
|
|
required: true
|
|
type: string
|
|
- description: ID of the organization pool to delete.
|
|
in: path
|
|
name: poolID
|
|
required: true
|
|
type: string
|
|
responses:
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Delete organization pool by ID.
|
|
tags:
|
|
- organizations
|
|
- pools
|
|
get:
|
|
operationId: GetOrgPool
|
|
parameters:
|
|
- description: Organization ID.
|
|
in: path
|
|
name: orgID
|
|
required: true
|
|
type: string
|
|
- description: Pool ID.
|
|
in: path
|
|
name: poolID
|
|
required: true
|
|
type: string
|
|
responses:
|
|
"200":
|
|
description: Pool
|
|
schema:
|
|
$ref: '#/definitions/Pool'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Get organization pool by ID.
|
|
tags:
|
|
- organizations
|
|
- pools
|
|
put:
|
|
operationId: UpdateOrgPool
|
|
parameters:
|
|
- description: Organization ID.
|
|
in: path
|
|
name: orgID
|
|
required: true
|
|
type: string
|
|
- description: ID of the organization pool to update.
|
|
in: path
|
|
name: poolID
|
|
required: true
|
|
type: string
|
|
- description: Parameters used when updating the organization pool.
|
|
in: body
|
|
name: Body
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/UpdatePoolParams'
|
|
description: Parameters used when updating the organization pool.
|
|
type: object
|
|
responses:
|
|
"200":
|
|
description: Pool
|
|
schema:
|
|
$ref: '#/definitions/Pool'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Update organization pool with the parameters given.
|
|
tags:
|
|
- organizations
|
|
- pools
|
|
/organizations/{orgID}/scalesets:
|
|
get:
|
|
operationId: ListOrgScaleSets
|
|
parameters:
|
|
- description: Organization ID.
|
|
in: path
|
|
name: orgID
|
|
required: true
|
|
type: string
|
|
responses:
|
|
"200":
|
|
description: ScaleSets
|
|
schema:
|
|
$ref: '#/definitions/ScaleSets'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: List organization scale sets.
|
|
tags:
|
|
- organizations
|
|
- scalesets
|
|
post:
|
|
operationId: CreateOrgScaleSet
|
|
parameters:
|
|
- description: Organization ID.
|
|
in: path
|
|
name: orgID
|
|
required: true
|
|
type: string
|
|
- description: Parameters used when creating the organization scale set.
|
|
in: body
|
|
name: Body
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/CreateScaleSetParams'
|
|
description: Parameters used when creating the organization scale set.
|
|
type: object
|
|
responses:
|
|
"200":
|
|
description: ScaleSet
|
|
schema:
|
|
$ref: '#/definitions/ScaleSet'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Create organization scale set with the parameters given.
|
|
tags:
|
|
- organizations
|
|
- scalesets
|
|
/organizations/{orgID}/webhook:
|
|
delete:
|
|
operationId: UninstallOrgWebhook
|
|
parameters:
|
|
- description: Organization ID.
|
|
in: path
|
|
name: orgID
|
|
required: true
|
|
type: string
|
|
responses:
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Uninstall organization webhook.
|
|
tags:
|
|
- organizations
|
|
- hooks
|
|
get:
|
|
operationId: GetOrgWebhookInfo
|
|
parameters:
|
|
- description: Organization ID.
|
|
in: path
|
|
name: orgID
|
|
required: true
|
|
type: string
|
|
responses:
|
|
"200":
|
|
description: HookInfo
|
|
schema:
|
|
$ref: '#/definitions/HookInfo'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Get information about the GARM installed webhook on an organization.
|
|
tags:
|
|
- organizations
|
|
- hooks
|
|
post:
|
|
description: |-
|
|
Install the GARM webhook for an organization. The secret configured on the organization will
|
|
be used to validate the requests.
|
|
operationId: InstallOrgWebhook
|
|
parameters:
|
|
- description: Organization ID.
|
|
in: path
|
|
name: orgID
|
|
required: true
|
|
type: string
|
|
- description: Parameters used when creating the organization webhook.
|
|
in: body
|
|
name: Body
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/InstallWebhookParams'
|
|
description: Parameters used when creating the organization webhook.
|
|
type: object
|
|
responses:
|
|
"200":
|
|
description: HookInfo
|
|
schema:
|
|
$ref: '#/definitions/HookInfo'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
tags:
|
|
- organizations
|
|
- hooks
|
|
/pools:
|
|
get:
|
|
operationId: ListPools
|
|
responses:
|
|
"200":
|
|
description: Pools
|
|
schema:
|
|
$ref: '#/definitions/Pools'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: List all pools.
|
|
tags:
|
|
- pools
|
|
/pools/{poolID}:
|
|
delete:
|
|
operationId: DeletePool
|
|
parameters:
|
|
- description: ID of the pool to delete.
|
|
in: path
|
|
name: poolID
|
|
required: true
|
|
type: string
|
|
responses:
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Delete pool by ID.
|
|
tags:
|
|
- pools
|
|
get:
|
|
operationId: GetPool
|
|
parameters:
|
|
- description: ID of the pool to fetch.
|
|
in: path
|
|
name: poolID
|
|
required: true
|
|
type: string
|
|
responses:
|
|
"200":
|
|
description: Pool
|
|
schema:
|
|
$ref: '#/definitions/Pool'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Get pool by ID.
|
|
tags:
|
|
- pools
|
|
put:
|
|
operationId: UpdatePool
|
|
parameters:
|
|
- description: ID of the pool to update.
|
|
in: path
|
|
name: poolID
|
|
required: true
|
|
type: string
|
|
- description: Parameters to update the pool with.
|
|
in: body
|
|
name: Body
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/UpdatePoolParams'
|
|
description: Parameters to update the pool with.
|
|
type: object
|
|
responses:
|
|
"200":
|
|
description: Pool
|
|
schema:
|
|
$ref: '#/definitions/Pool'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Update pool by ID.
|
|
tags:
|
|
- pools
|
|
/pools/{poolID}/instances:
|
|
get:
|
|
operationId: ListPoolInstances
|
|
parameters:
|
|
- description: Runner pool ID.
|
|
in: path
|
|
name: poolID
|
|
required: true
|
|
type: string
|
|
responses:
|
|
"200":
|
|
description: Instances
|
|
schema:
|
|
$ref: '#/definitions/Instances'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: List runner instances in a pool.
|
|
tags:
|
|
- instances
|
|
/providers:
|
|
get:
|
|
operationId: ListProviders
|
|
responses:
|
|
"200":
|
|
description: Providers
|
|
schema:
|
|
$ref: '#/definitions/Providers'
|
|
"400":
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: List all providers.
|
|
tags:
|
|
- providers
|
|
/repositories:
|
|
get:
|
|
operationId: ListRepos
|
|
parameters:
|
|
- description: Exact owner name to filter by
|
|
in: query
|
|
name: owner
|
|
type: string
|
|
- description: Exact repository name to filter by
|
|
in: query
|
|
name: name
|
|
type: string
|
|
- description: Exact endpoint name to filter by
|
|
in: query
|
|
name: endpoint
|
|
type: string
|
|
responses:
|
|
"200":
|
|
description: Repositories
|
|
schema:
|
|
$ref: '#/definitions/Repositories'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: List repositories.
|
|
tags:
|
|
- repositories
|
|
post:
|
|
operationId: CreateRepo
|
|
parameters:
|
|
- description: Parameters used when creating the repository.
|
|
in: body
|
|
name: Body
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/CreateRepoParams'
|
|
description: Parameters used when creating the repository.
|
|
type: object
|
|
responses:
|
|
"200":
|
|
description: Repository
|
|
schema:
|
|
$ref: '#/definitions/Repository'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Create repository with the parameters given.
|
|
tags:
|
|
- repositories
|
|
/repositories/{repoID}:
|
|
delete:
|
|
operationId: DeleteRepo
|
|
parameters:
|
|
- description: ID of the repository to delete.
|
|
in: path
|
|
name: repoID
|
|
required: true
|
|
type: string
|
|
- description: If true and a webhook is installed for this repo, it will not be removed.
|
|
in: query
|
|
name: keepWebhook
|
|
type: boolean
|
|
responses:
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Delete repository by ID.
|
|
tags:
|
|
- repositories
|
|
get:
|
|
operationId: GetRepo
|
|
parameters:
|
|
- description: ID of the repository to fetch.
|
|
in: path
|
|
name: repoID
|
|
required: true
|
|
type: string
|
|
responses:
|
|
"200":
|
|
description: Repository
|
|
schema:
|
|
$ref: '#/definitions/Repository'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Get repository by ID.
|
|
tags:
|
|
- repositories
|
|
put:
|
|
operationId: UpdateRepo
|
|
parameters:
|
|
- description: ID of the repository to update.
|
|
in: path
|
|
name: repoID
|
|
required: true
|
|
type: string
|
|
- description: Parameters used when updating the repository.
|
|
in: body
|
|
name: Body
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/UpdateEntityParams'
|
|
description: Parameters used when updating the repository.
|
|
type: object
|
|
responses:
|
|
"200":
|
|
description: Repository
|
|
schema:
|
|
$ref: '#/definitions/Repository'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Update repository with the parameters given.
|
|
tags:
|
|
- repositories
|
|
/repositories/{repoID}/instances:
|
|
get:
|
|
operationId: ListRepoInstances
|
|
parameters:
|
|
- description: Repository ID.
|
|
in: path
|
|
name: repoID
|
|
required: true
|
|
type: string
|
|
responses:
|
|
"200":
|
|
description: Instances
|
|
schema:
|
|
$ref: '#/definitions/Instances'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: List repository instances.
|
|
tags:
|
|
- repositories
|
|
- instances
|
|
/repositories/{repoID}/pools:
|
|
get:
|
|
operationId: ListRepoPools
|
|
parameters:
|
|
- description: Repository ID.
|
|
in: path
|
|
name: repoID
|
|
required: true
|
|
type: string
|
|
responses:
|
|
"200":
|
|
description: Pools
|
|
schema:
|
|
$ref: '#/definitions/Pools'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: List repository pools.
|
|
tags:
|
|
- repositories
|
|
- pools
|
|
post:
|
|
operationId: CreateRepoPool
|
|
parameters:
|
|
- description: Repository ID.
|
|
in: path
|
|
name: repoID
|
|
required: true
|
|
type: string
|
|
- description: Parameters used when creating the repository pool.
|
|
in: body
|
|
name: Body
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/CreatePoolParams'
|
|
description: Parameters used when creating the repository pool.
|
|
type: object
|
|
responses:
|
|
"200":
|
|
description: Pool
|
|
schema:
|
|
$ref: '#/definitions/Pool'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Create repository pool with the parameters given.
|
|
tags:
|
|
- repositories
|
|
- pools
|
|
/repositories/{repoID}/pools/{poolID}:
|
|
delete:
|
|
operationId: DeleteRepoPool
|
|
parameters:
|
|
- description: Repository ID.
|
|
in: path
|
|
name: repoID
|
|
required: true
|
|
type: string
|
|
- description: ID of the repository pool to delete.
|
|
in: path
|
|
name: poolID
|
|
required: true
|
|
type: string
|
|
responses:
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Delete repository pool by ID.
|
|
tags:
|
|
- repositories
|
|
- pools
|
|
get:
|
|
operationId: GetRepoPool
|
|
parameters:
|
|
- description: Repository ID.
|
|
in: path
|
|
name: repoID
|
|
required: true
|
|
type: string
|
|
- description: Pool ID.
|
|
in: path
|
|
name: poolID
|
|
required: true
|
|
type: string
|
|
responses:
|
|
"200":
|
|
description: Pool
|
|
schema:
|
|
$ref: '#/definitions/Pool'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Get repository pool by ID.
|
|
tags:
|
|
- repositories
|
|
- pools
|
|
put:
|
|
operationId: UpdateRepoPool
|
|
parameters:
|
|
- description: Repository ID.
|
|
in: path
|
|
name: repoID
|
|
required: true
|
|
type: string
|
|
- description: ID of the repository pool to update.
|
|
in: path
|
|
name: poolID
|
|
required: true
|
|
type: string
|
|
- description: Parameters used when updating the repository pool.
|
|
in: body
|
|
name: Body
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/UpdatePoolParams'
|
|
description: Parameters used when updating the repository pool.
|
|
type: object
|
|
responses:
|
|
"200":
|
|
description: Pool
|
|
schema:
|
|
$ref: '#/definitions/Pool'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Update repository pool with the parameters given.
|
|
tags:
|
|
- repositories
|
|
- pools
|
|
/repositories/{repoID}/scalesets:
|
|
get:
|
|
operationId: ListRepoScaleSets
|
|
parameters:
|
|
- description: Repository ID.
|
|
in: path
|
|
name: repoID
|
|
required: true
|
|
type: string
|
|
responses:
|
|
"200":
|
|
description: ScaleSets
|
|
schema:
|
|
$ref: '#/definitions/ScaleSets'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: List repository scale sets.
|
|
tags:
|
|
- repositories
|
|
- scalesets
|
|
post:
|
|
operationId: CreateRepoScaleSet
|
|
parameters:
|
|
- description: Repository ID.
|
|
in: path
|
|
name: repoID
|
|
required: true
|
|
type: string
|
|
- description: Parameters used when creating the repository scale set.
|
|
in: body
|
|
name: Body
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/CreateScaleSetParams'
|
|
description: Parameters used when creating the repository scale set.
|
|
type: object
|
|
responses:
|
|
"200":
|
|
description: ScaleSet
|
|
schema:
|
|
$ref: '#/definitions/ScaleSet'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Create repository scale set with the parameters given.
|
|
tags:
|
|
- repositories
|
|
- scalesets
|
|
/repositories/{repoID}/webhook:
|
|
delete:
|
|
operationId: UninstallRepoWebhook
|
|
parameters:
|
|
- description: Repository ID.
|
|
in: path
|
|
name: repoID
|
|
required: true
|
|
type: string
|
|
responses:
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Uninstall organization webhook.
|
|
tags:
|
|
- repositories
|
|
- hooks
|
|
get:
|
|
operationId: GetRepoWebhookInfo
|
|
parameters:
|
|
- description: Repository ID.
|
|
in: path
|
|
name: repoID
|
|
required: true
|
|
type: string
|
|
responses:
|
|
"200":
|
|
description: HookInfo
|
|
schema:
|
|
$ref: '#/definitions/HookInfo'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Get information about the GARM installed webhook on a repository.
|
|
tags:
|
|
- repositories
|
|
- hooks
|
|
post:
|
|
description: |-
|
|
Install the GARM webhook for an organization. The secret configured on the organization will
|
|
be used to validate the requests.
|
|
operationId: InstallRepoWebhook
|
|
parameters:
|
|
- description: Repository ID.
|
|
in: path
|
|
name: repoID
|
|
required: true
|
|
type: string
|
|
- description: Parameters used when creating the repository webhook.
|
|
in: body
|
|
name: Body
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/InstallWebhookParams'
|
|
description: Parameters used when creating the repository webhook.
|
|
type: object
|
|
responses:
|
|
"200":
|
|
description: HookInfo
|
|
schema:
|
|
$ref: '#/definitions/HookInfo'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
tags:
|
|
- repositories
|
|
- hooks
|
|
/scalesets:
|
|
get:
|
|
operationId: ListScalesets
|
|
responses:
|
|
"200":
|
|
description: ScaleSets
|
|
schema:
|
|
$ref: '#/definitions/ScaleSets'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: List all scalesets.
|
|
tags:
|
|
- scalesets
|
|
/scalesets/{scalesetID}:
|
|
delete:
|
|
operationId: DeleteScaleSet
|
|
parameters:
|
|
- description: ID of the scale set to delete.
|
|
in: path
|
|
name: scalesetID
|
|
required: true
|
|
type: string
|
|
responses:
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Delete scale set by ID.
|
|
tags:
|
|
- scalesets
|
|
get:
|
|
operationId: GetScaleSet
|
|
parameters:
|
|
- description: ID of the scale set to fetch.
|
|
in: path
|
|
name: scalesetID
|
|
required: true
|
|
type: string
|
|
responses:
|
|
"200":
|
|
description: ScaleSet
|
|
schema:
|
|
$ref: '#/definitions/ScaleSet'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Get scale set by ID.
|
|
tags:
|
|
- scalesets
|
|
put:
|
|
operationId: UpdateScaleSet
|
|
parameters:
|
|
- description: ID of the scale set to update.
|
|
in: path
|
|
name: scalesetID
|
|
required: true
|
|
type: string
|
|
- description: Parameters to update the scale set with.
|
|
in: body
|
|
name: Body
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/UpdateScaleSetParams'
|
|
description: Parameters to update the scale set with.
|
|
type: object
|
|
responses:
|
|
"200":
|
|
description: ScaleSet
|
|
schema:
|
|
$ref: '#/definitions/ScaleSet'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: Update scale set by ID.
|
|
tags:
|
|
- scalesets
|
|
/scalesets/{scalesetID}/instances:
|
|
get:
|
|
operationId: ListScaleSetInstances
|
|
parameters:
|
|
- description: Runner scale set ID.
|
|
in: path
|
|
name: scalesetID
|
|
required: true
|
|
type: string
|
|
responses:
|
|
"200":
|
|
description: Instances
|
|
schema:
|
|
$ref: '#/definitions/Instances'
|
|
default:
|
|
description: APIErrorResponse
|
|
schema:
|
|
$ref: '#/definitions/APIErrorResponse'
|
|
summary: List runner instances in a scale set.
|
|
tags:
|
|
- instances
|
|
produces:
|
|
- application/json
|
|
security:
|
|
- Bearer: []
|
|
securityDefinitions:
|
|
Bearer:
|
|
description: 'The token with the `Bearer: ` prefix, e.g. "Bearer abcde12345".'
|
|
in: header
|
|
name: Authorization
|
|
type: apiKey
|
|
swagger: "2.0"
|