mirror of
https://github.com/containers/podman.git
synced 2025-08-06 19:44:14 +08:00

Add the `podman generate kube` and `podman play kube` command. The code has largely been copied from Podman v1 but restructured to not leak the K8s core API into the (remote) client. Both commands are added in the same commit to allow for enabling the tests at the same time. Move some exports from `cmd/podman/common` to the appropriate places in the backend to avoid circular dependencies. Move definitions of label annotations to `libpod/define` and set the security-opt labels in the frontend to make kube tests pass. Implement rest endpoints, bindings and the tunnel interface. Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
181 lines
3.6 KiB
Go
181 lines
3.6 KiB
Go
package swagger
|
|
|
|
import (
|
|
"github.com/containers/libpod/libpod"
|
|
"github.com/containers/libpod/libpod/define"
|
|
"github.com/containers/libpod/libpod/image"
|
|
"github.com/containers/libpod/pkg/api/handlers"
|
|
"github.com/containers/libpod/pkg/domain/entities"
|
|
"github.com/containers/libpod/pkg/inspect"
|
|
"github.com/docker/docker/api/types"
|
|
)
|
|
|
|
// History response
|
|
// swagger:response DocsHistory
|
|
type swagHistory struct {
|
|
// in:body
|
|
Body struct {
|
|
handlers.HistoryResponse
|
|
}
|
|
}
|
|
|
|
// Inspect response
|
|
// swagger:response DocsImageInspect
|
|
type swagImageInspect struct {
|
|
// in:body
|
|
Body struct {
|
|
handlers.ImageInspect
|
|
}
|
|
}
|
|
|
|
// Load response
|
|
// swagger:response DocsLibpodImagesLoadResponse
|
|
type swagLibpodImagesLoadResponse struct {
|
|
// in:body
|
|
Body entities.ImageLoadReport
|
|
}
|
|
|
|
// Import response
|
|
// swagger:response DocsLibpodImagesImportResponse
|
|
type swagLibpodImagesImportResponse struct {
|
|
// in:body
|
|
Body entities.ImageImportReport
|
|
}
|
|
|
|
// Pull response
|
|
// swagger:response DocsLibpodImagesPullResponse
|
|
type swagLibpodImagesPullResponse struct {
|
|
// in:body
|
|
Body handlers.LibpodImagesPullReport
|
|
}
|
|
|
|
// Remove response
|
|
// swagger:response DocsLibpodImagesRemoveResponse
|
|
type swagLibpodImagesRemoveResponse struct {
|
|
// in:body
|
|
Body handlers.LibpodImagesRemoveReport
|
|
}
|
|
|
|
// PlayKube response
|
|
// swagger:response DocsLibpodPlayKubeResponse
|
|
type swagLibpodPlayKubeResponse struct {
|
|
// in:body
|
|
Body entities.PlayKubeReport
|
|
}
|
|
|
|
// Delete response
|
|
// swagger:response DocsImageDeleteResponse
|
|
type swagImageDeleteResponse struct {
|
|
// in:body
|
|
Body []image.ImageDeleteResponse
|
|
}
|
|
|
|
// Search results
|
|
// swagger:response DocsSearchResponse
|
|
type swagSearchResponse struct {
|
|
// in:body
|
|
Body struct {
|
|
image.SearchResult
|
|
}
|
|
}
|
|
|
|
// Inspect image
|
|
// swagger:response DocsLibpodInspectImageResponse
|
|
type swagLibpodInspectImageResponse struct {
|
|
// in:body
|
|
Body struct {
|
|
inspect.ImageData
|
|
}
|
|
}
|
|
|
|
// Prune containers
|
|
// swagger:response DocsContainerPruneReport
|
|
type swagContainerPruneReport struct {
|
|
// in: body
|
|
Body []handlers.ContainersPruneReport
|
|
}
|
|
|
|
// Prune containers
|
|
// swagger:response DocsLibpodPruneResponse
|
|
type swagLibpodContainerPruneReport struct {
|
|
// in: body
|
|
Body []handlers.LibpodContainersPruneReport
|
|
}
|
|
|
|
// Inspect container
|
|
// swagger:response DocsContainerInspectResponse
|
|
type swagContainerInspectResponse struct {
|
|
// in:body
|
|
Body struct {
|
|
types.ContainerJSON
|
|
}
|
|
}
|
|
|
|
// List processes in container
|
|
// swagger:response DocsContainerTopResponse
|
|
type swagContainerTopResponse struct {
|
|
// in:body
|
|
Body struct {
|
|
handlers.ContainerTopOKBody
|
|
}
|
|
}
|
|
|
|
// List processes in pod
|
|
// swagger:response DocsPodTopResponse
|
|
type swagPodTopResponse struct {
|
|
// in:body
|
|
Body struct {
|
|
handlers.PodTopOKBody
|
|
}
|
|
}
|
|
|
|
// List processes in pod
|
|
// swagger:response DocsPodStatsResponse
|
|
type swagPodStatsResponse struct {
|
|
// in:body
|
|
Body []*entities.PodStatsReport
|
|
}
|
|
|
|
// Inspect container
|
|
// swagger:response LibpodInspectContainerResponse
|
|
type swagLibpodInspectContainerResponse struct {
|
|
// in:body
|
|
Body struct {
|
|
define.InspectContainerData
|
|
}
|
|
}
|
|
|
|
// List pods
|
|
// swagger:response ListPodsResponse
|
|
type swagListPodsResponse struct {
|
|
// in:body
|
|
Body []entities.ListPodsReport
|
|
}
|
|
|
|
// Inspect pod
|
|
// swagger:response InspectPodResponse
|
|
type swagInspectPodResponse struct {
|
|
// in:body
|
|
Body struct {
|
|
define.InspectPodData
|
|
}
|
|
}
|
|
|
|
// Inspect volume
|
|
// swagger:response InspectVolumeResponse
|
|
type swagInspectVolumeResponse struct {
|
|
// in:body
|
|
Body struct {
|
|
libpod.InspectVolumeData
|
|
}
|
|
}
|
|
|
|
// Image tree response
|
|
// swagger:response LibpodImageTreeResponse
|
|
type swagImageTreeResponse struct {
|
|
// in:body
|
|
Body struct {
|
|
handlers.ImageTreeResponse
|
|
}
|
|
}
|