diff options
Diffstat (limited to 'pkg/api/server')
| -rw-r--r-- | pkg/api/server/register_generate.go | 41 | ||||
| -rw-r--r-- | pkg/api/server/register_images.go | 64 | ||||
| -rw-r--r-- | pkg/api/server/register_play.go | 42 | ||||
| -rw-r--r-- | pkg/api/server/server.go | 2 | 
4 files changed, 117 insertions, 32 deletions
diff --git a/pkg/api/server/register_generate.go b/pkg/api/server/register_generate.go new file mode 100644 index 000000000..391e60111 --- /dev/null +++ b/pkg/api/server/register_generate.go @@ -0,0 +1,41 @@ +package server + +import ( +	"net/http" + +	"github.com/containers/libpod/pkg/api/handlers/libpod" +	"github.com/gorilla/mux" +) + +func (s *APIServer) registerGenerateHandlers(r *mux.Router) error { +	// swagger:operation GET /libpod/generate/{name:.*}/kube libpod libpodGenerateKube +	// --- +	// tags: +	//  - containers +	//  - pods +	// summary: Play a Kubernetes YAML file. +	// description: Create and run pods based on a Kubernetes YAML file (pod or service kind). +	// parameters: +	//  - in: path +	//    name: name:.* +	//    type: string +	//    required: true +	//    description: Name or ID of the container or pod. +	//  - in: query +	//    name: service +	//    type: boolean +	//    default: false +	//    description: Generate YAML for a Kubernetes service object. +	// produces: +	// - application/json +	// responses: +	//   200: +	//     description: no error +	//     schema: +	//      type: string +	//      format: binary +	//   500: +	//     $ref: "#/responses/InternalError" +	r.HandleFunc(VersionedPath("/libpod/generate/{name:.*}/kube"), s.APIHandler(libpod.GenerateKube)).Methods(http.MethodGet) +	return nil +} diff --git a/pkg/api/server/register_images.go b/pkg/api/server/register_images.go index f59dca6f5..0e8d68b7e 100644 --- a/pkg/api/server/register_images.go +++ b/pkg/api/server/register_images.go @@ -822,7 +822,7 @@ func (s *APIServer) registerImagesHandlers(r *mux.Router) error {  	//   500:  	//     $ref: '#/responses/InternalError'  	r.Handle(VersionedPath("/libpod/images/import"), s.APIHandler(libpod.ImagesImport)).Methods(http.MethodPost) -	// swagger:operation GET /libpod/images/remove libpod libpodImagesRemove +	// swagger:operation DELETE /libpod/images/remove libpod libpodImagesRemove  	// ---  	// tags:  	//  - images @@ -853,7 +853,37 @@ func (s *APIServer) registerImagesHandlers(r *mux.Router) error {  	//     $ref: "#/responses/BadParamError"  	//   500:  	//     $ref: '#/responses/InternalError' -	r.Handle(VersionedPath("/libpod/images/remove"), s.APIHandler(libpod.ImagesRemove)).Methods(http.MethodGet) +	r.Handle(VersionedPath("/libpod/images/remove"), s.APIHandler(libpod.ImagesBatchRemove)).Methods(http.MethodDelete) +	// swagger:operation DELETE /libpod/images/{name:.*}/remove libpod libpodRemoveImage +	// --- +	// tags: +	//  - images +	// summary: Remove an image from the local storage. +	// description: Remove an image from the local storage. +	// parameters: +	//  - in: path +	//    name: name:.* +	//    type: string +	//    required: true +	//    description: name or ID of image to remove +	//  - in: query +	//    name: force +	//    type: boolean +	//    description: remove the image even if used by containers or has other tags +	// produces: +	// - application/json +	// responses: +	//   200: +	//     $ref: "#/responses/DocsImageDeleteResponse" +	//   400: +	//     $ref: "#/responses/BadParamError" +	//   404: +	//     $ref: '#/responses/NoSuchImage' +	//   409: +	//     $ref: '#/responses/ConflictError' +	//   500: +	//     $ref: '#/responses/InternalError' +	r.Handle(VersionedPath("/libpod/images/{name:.*}/remove"), s.APIHandler(libpod.ImagesRemove)).Methods(http.MethodDelete)  	// swagger:operation POST /libpod/images/pull libpod libpodImagesPull  	// ---  	// tags: @@ -952,36 +982,6 @@ func (s *APIServer) registerImagesHandlers(r *mux.Router) error {  	//   500:  	//      $ref: '#/responses/InternalError'  	r.Handle(VersionedPath("/libpod/images/search"), s.APIHandler(libpod.SearchImages)).Methods(http.MethodGet) -	// swagger:operation DELETE /libpod/images/{name:.*} libpod libpodRemoveImage -	// --- -	// tags: -	//  - images -	// summary: Remove Image -	// description: Delete an image from local store -	// parameters: -	//  - in: path -	//    name: name:.* -	//    type: string -	//    required: true -	//    description: name or ID of image to delete -	//  - in: query -	//    name: force -	//    type: boolean -	//    description: remove the image even if used by containers or has other tags -	// produces: -	// - application/json -	// responses: -	//   200: -	//     $ref: "#/responses/DocsImageDeleteResponse" -	//   400: -	//     $ref: "#/responses/BadParamError" -	//   404: -	//     $ref: '#/responses/NoSuchImage' -	//   409: -	//     $ref: '#/responses/ConflictError' -	//   500: -	//     $ref: '#/responses/InternalError' -	r.Handle(VersionedPath("/libpod/images/{name:.*}"), s.APIHandler(compat.RemoveImage)).Methods(http.MethodDelete)  	// swagger:operation GET /libpod/images/{name:.*}/get libpod libpodExportImage  	// ---  	// tags: diff --git a/pkg/api/server/register_play.go b/pkg/api/server/register_play.go new file mode 100644 index 000000000..d04879c19 --- /dev/null +++ b/pkg/api/server/register_play.go @@ -0,0 +1,42 @@ +package server + +import ( +	"net/http" + +	"github.com/containers/libpod/pkg/api/handlers/libpod" +	"github.com/gorilla/mux" +) + +func (s *APIServer) registerPlayHandlers(r *mux.Router) error { +	// swagger:operation POST /libpod/play/kube libpod libpodPlayKube +	// --- +	// tags: +	//  - containers +	//  - pods +	// summary: Play a Kubernetes YAML file. +	// description: Create and run pods based on a Kubernetes YAML file (pod or service kind). +	// parameters: +	//  - in: query +	//    name: network +	//    type: string +	//    description: Connect the pod to this network. +	//  - in: query +	//    name: tlsVerify +	//    type: boolean +	//    default: true +	//    description: Require HTTPS and verify signatures when contating registries. +	//  - in: body +	//    name: request +	//    description: Kubernetes YAML file. +	//    schema: +	//      type: string +	// produces: +	// - application/json +	// responses: +	//   200: +	//     $ref: "#/responses/DocsLibpodPlayKubeResponse" +	//   500: +	//     $ref: "#/responses/InternalError" +	r.HandleFunc(VersionedPath("/libpod/play/kube"), s.APIHandler(libpod.PlayKube)).Methods(http.MethodPost) +	return nil +} diff --git a/pkg/api/server/server.go b/pkg/api/server/server.go index ce2d152e0..a6c5d8e1e 100644 --- a/pkg/api/server/server.go +++ b/pkg/api/server/server.go @@ -98,12 +98,14 @@ func newServer(runtime *libpod.Runtime, duration time.Duration, listener *net.Li  		server.registerDistributionHandlers,  		server.registerEventsHandlers,  		server.registerExecHandlers, +		server.registerGenerateHandlers,  		server.registerHealthCheckHandlers,  		server.registerImagesHandlers,  		server.registerInfoHandlers,  		server.registerManifestHandlers,  		server.registerMonitorHandlers,  		server.registerPingHandlers, +		server.registerPlayHandlers,  		server.registerPluginsHandlers,  		server.registerPodsHandlers,  		server.RegisterSwaggerHandlers,  | 
