diff --git a/API.md b/API.md index c9d2d5c236..af48c10b10 100755 --- a/API.md +++ b/API.md @@ -7,9 +7,9 @@ in the [API.md](https://github.com/projectatomic/libpod/blob/master/API.md) file [func BuildImage() NotImplemented](#BuildImage) -[func CreateContainer() NotImplemented](#CreateContainer) +[func Commit(name: string, image_name: string, changes: []string, author: string, message: string, pause: bool) string](#Commit) -[func CreateFromContainer() NotImplemented](#CreateFromContainer) +[func CreateContainer() NotImplemented](#CreateContainer) [func CreateImage() NotImplemented](#CreateImage) @@ -27,14 +27,14 @@ in the [API.md](https://github.com/projectatomic/libpod/blob/master/API.md) file [func GetContainerStats(name: string) ContainerStats](#GetContainerStats) +[func GetInfo() PodmanInfo](#GetInfo) + [func GetVersion() Version](#GetVersion) [func HistoryImage(name: string) ImageHistory](#HistoryImage) [func ImportImage(source: string, reference: string, message: string, changes: []string) string](#ImportImage) -[func Info() PodmanInfo](#Info) - [func InspectContainer(name: string) string](#InspectContainer) [func InspectImage(name: string) string](#InspectImage) @@ -134,16 +134,22 @@ This method has not be implemented yet. method BuildImage() [NotImplemented](#NotImplemented) This function is not implemented yet. +### func Commit +
+ +method Commit(name: [string](https://godoc.org/builtin#string), image_name: [string](https://godoc.org/builtin#string), changes: [[]string](#[]string), author: [string](https://godoc.org/builtin#string), message: [string](https://godoc.org/builtin#string), pause: [bool](https://godoc.org/builtin#bool)) [string](https://godoc.org/builtin#string)
+Commit, creates an image from an existing container. It requires the name or +ID of the container as well as the resulting image name. Optionally, you can define an author and message +to be added to the resulting image. You can also define changes to the resulting image for the following +attributes: _CMD, ENTRYPOINT, ENV, EXPOSE, LABEL, STOPSIGNAL, USER, VOLUME, and WORKDIR_. To pause the +container while it is being committed, pass a _true_ bool for the pause argument. If the container cannot +be found by the ID or name provided, a (ContainerNotFound)[#ContainerNotFound] error will be returned; otherwise, +the resulting image's ID will be returned as a string. ### func CreateContainer
method CreateContainer() [NotImplemented](#NotImplemented)
-This method has not been implemented yet. -### func CreateFromContainer -
- -method CreateFromContainer() [NotImplemented](#NotImplemented)
-This method is not implemented. +This method is not implemented yet. ### func CreateImage
@@ -219,6 +225,12 @@ $ varlink call -m unix:/run/io.projectatomic.podman/io.projectatomic.podman.GetC } } ~~~ +### func GetInfo +
+ +method GetInfo() [PodmanInfo](#PodmanInfo)
+GetInfo returns a [PodmanInfo](#PodmanInfo) struct that describes podman and its host such as storage stats, +build information of Podman, and system-wide registries. ### func GetVersion
@@ -238,12 +250,6 @@ history is in the form of an array of ImageHistory structures. If the image can method ImportImage(source: [string](https://godoc.org/builtin#string), reference: [string](https://godoc.org/builtin#string), message: [string](https://godoc.org/builtin#string), changes: [[]string](#[]string)) [string](https://godoc.org/builtin#string)
ImportImage imports an image from a source (like tarball) into local storage. The image can have additional descriptions added to it using the message and changes options. See also [ExportImage](ExportImage). -### func Info -
- -method Info() [PodmanInfo](#PodmanInfo)
-Info returns a [PodmanInfo](#PodmanInfo) struct that describes podman and its host such as storage stats, -build information of Podman, and system-wide registries. ### func InspectContainer
@@ -576,7 +582,7 @@ name [string](https://godoc.org/builtin#string) star_count [int](https://godoc.org/builtin#int) ### type InfoGraphStatus -InfoGraphStatus describes the detailed status of the graphc +InfoGraphStatus describes the detailed status of the storage driver backing_filesystem [string](https://godoc.org/builtin#string) diff --git a/cmd/podman/varlink/io.projectatomic.podman.varlink b/cmd/podman/varlink/io.projectatomic.podman.varlink index 66f6363b9d..3de9ecdf86 100644 --- a/cmd/podman/varlink/io.projectatomic.podman.varlink +++ b/cmd/podman/varlink/io.projectatomic.podman.varlink @@ -138,7 +138,7 @@ type InfoHost ( uptime: string ) -# InfoGraphStatus describes the detailed status of the graph +# InfoGraphStatus describes the detailed status of the storage driver type InfoGraphStatus ( backing_filesystem: string, native_overlay_diff: string, @@ -202,7 +202,7 @@ method ListContainers() -> (containers: []ListContainerData) # See also [ListContainers](ListContainers) and [InspectContainer](InspectContainer). method GetContainer(name: string) -> (container: ListContainerData) -# This method has not been implemented yet. +# This method is not implemented yet. method CreateContainer() -> (notimplemented: NotImplemented) # InspectContainer data takes a name or ID of a container returns the inspection @@ -391,8 +391,14 @@ method SearchImage(name: string, limit: int) -> (images: []ImageSearch) # in a string array. method DeleteUnusedImages() -> (images: []string) -# This method is not implemented. -method CreateFromContainer() -> (notimplemented: NotImplemented) +# Commit, creates an image from an existing container. It requires the name or +# ID of the container as well as the resulting image name. Optionally, you can define an author and message +# to be added to the resulting image. You can also define changes to the resulting image for the following +# attributes: _CMD, ENTRYPOINT, ENV, EXPOSE, LABEL, STOPSIGNAL, USER, VOLUME, and WORKDIR_. To pause the +# container while it is being committed, pass a _true_ bool for the pause argument. If the container cannot +# be found by the ID or name provided, a (ContainerNotFound)[#ContainerNotFound] error will be returned; otherwise, +# the resulting image's ID will be returned as a string. +method Commit(name: string, image_name: string, changes: []string, author: string, message: string, pause: bool) -> (image: string) # ImportImage imports an image from a source (like tarball) into local storage. The image can have additional # descriptions added to it using the message and changes options. See also [ExportImage](ExportImage). diff --git a/cmd/podman/varlink/ioprojectatomicpodman.go b/cmd/podman/varlink/ioprojectatomicpodman.go index 2ce0d453f4..174819538c 100644 --- a/cmd/podman/varlink/ioprojectatomicpodman.go +++ b/cmd/podman/varlink/ioprojectatomicpodman.go @@ -4,69 +4,6 @@ package ioprojectatomicpodman import "github.com/varlink/go/varlink" // Type declarations -type Version struct { - Version string `json:"version"` - Go_version string `json:"go_version"` - Git_commit string `json:"git_commit"` - Built int64 `json:"built"` - Os_arch string `json:"os_arch"` -} - -type ImageHistory struct { - Id string `json:"id"` - Created string `json:"created"` - CreatedBy string `json:"createdBy"` - Tags []string `json:"tags"` - Size int64 `json:"size"` - Comment string `json:"comment"` -} - -type ContainerPortMappings struct { - Host_port string `json:"host_port"` - Host_ip string `json:"host_ip"` - Protocol string `json:"protocol"` - Container_port string `json:"container_port"` -} - -type InfoGraphStatus struct { - Backing_filesystem string `json:"backing_filesystem"` - Native_overlay_diff string `json:"native_overlay_diff"` - Supports_d_type string `json:"supports_d_type"` -} - -type InfoPodmanBinary struct { - Compiler string `json:"compiler"` - Go_version string `json:"go_version"` - Podman_version string `json:"podman_version"` - Git_commit string `json:"git_commit"` -} - -type PodmanInfo struct { - Host InfoHost `json:"host"` - Registries []string `json:"registries"` - Insecure_registries []string `json:"insecure_registries"` - Store InfoStore `json:"store"` - Podman InfoPodmanBinary `json:"podman"` -} - -type StringResponse struct { - Message string `json:"message"` -} - -type ContainerChanges struct { - Changed []string `json:"changed"` - Added []string `json:"added"` - Deleted []string `json:"deleted"` -} - -type ImageSearch struct { - Description string `json:"description"` - Is_official bool `json:"is_official"` - Is_automated bool `json:"is_automated"` - Name string `json:"name"` - Star_count int64 `json:"star_count"` -} - type ContainerStats struct { Id string `json:"id"` Name string `json:"name"` @@ -83,6 +20,35 @@ type ContainerStats struct { Pids int64 `json:"pids"` } +type InfoGraphStatus struct { + Backing_filesystem string `json:"backing_filesystem"` + Native_overlay_diff string `json:"native_overlay_diff"` + Supports_d_type string `json:"supports_d_type"` +} + +type PodmanInfo struct { + Host InfoHost `json:"host"` + Registries []string `json:"registries"` + Insecure_registries []string `json:"insecure_registries"` + Store InfoStore `json:"store"` + Podman InfoPodmanBinary `json:"podman"` +} + +type StringResponse struct { + Message string `json:"message"` +} + +type ContainerNameSpace struct { + User string `json:"user"` + Uts string `json:"uts"` + Pidns string `json:"pidns"` + Pid string `json:"pid"` + Cgroup string `json:"cgroup"` + Net string `json:"net"` + Mnt string `json:"mnt"` + Ipc string `json:"ipc"` +} + type InfoHost struct { Mem_free int64 `json:"mem_free"` Mem_total int64 `json:"mem_total"` @@ -96,6 +62,12 @@ type InfoHost struct { Uptime string `json:"uptime"` } +type ContainerChanges struct { + Changed []string `json:"changed"` + Added []string `json:"added"` + Deleted []string `json:"deleted"` +} + type ImageInList struct { Id string `json:"id"` ParentId string `json:"parentId"` @@ -108,6 +80,15 @@ type ImageInList struct { Labels map[string]string `json:"labels"` } +type ImageHistory struct { + Id string `json:"id"` + Created string `json:"created"` + CreatedBy string `json:"createdBy"` + Tags []string `json:"tags"` + Size int64 `json:"size"` + Comment string `json:"comment"` +} + type ContainerMount struct { Destination string `json:"destination"` Type string `json:"type"` @@ -115,18 +96,34 @@ type ContainerMount struct { Options []string `json:"options"` } -type InfoStore struct { - Containers int64 `json:"containers"` - Images int64 `json:"images"` - Graph_driver_name string `json:"graph_driver_name"` - Graph_driver_options string `json:"graph_driver_options"` - Graph_root string `json:"graph_root"` - Graph_status InfoGraphStatus `json:"graph_status"` - Run_root string `json:"run_root"` +type ContainerPortMappings struct { + Host_port string `json:"host_port"` + Host_ip string `json:"host_ip"` + Protocol string `json:"protocol"` + Container_port string `json:"container_port"` } -type NotImplemented struct { - Comment string `json:"comment"` +type InfoPodmanBinary struct { + Compiler string `json:"compiler"` + Go_version string `json:"go_version"` + Podman_version string `json:"podman_version"` + Git_commit string `json:"git_commit"` +} + +type Version struct { + Version string `json:"version"` + Go_version string `json:"go_version"` + Git_commit string `json:"git_commit"` + Built int64 `json:"built"` + Os_arch string `json:"os_arch"` +} + +type ImageSearch struct { + Description string `json:"description"` + Is_official bool `json:"is_official"` + Is_automated bool `json:"is_automated"` + Name string `json:"name"` + Star_count int64 `json:"star_count"` } type ListContainerData struct { @@ -147,89 +144,26 @@ type ListContainerData struct { Namespaces ContainerNameSpace `json:"namespaces"` } -type ContainerNameSpace struct { - User string `json:"user"` - Uts string `json:"uts"` - Pidns string `json:"pidns"` - Pid string `json:"pid"` - Cgroup string `json:"cgroup"` - Net string `json:"net"` - Mnt string `json:"mnt"` - Ipc string `json:"ipc"` +type InfoStore struct { + Containers int64 `json:"containers"` + Images int64 `json:"images"` + Graph_driver_name string `json:"graph_driver_name"` + Graph_driver_options string `json:"graph_driver_options"` + Graph_root string `json:"graph_root"` + Graph_status InfoGraphStatus `json:"graph_status"` + Run_root string `json:"run_root"` +} + +type NotImplemented struct { + Comment string `json:"comment"` } // Client method calls -type GetVersion_methods struct{} +type AttachToContainer_methods struct{} -func GetVersion() GetVersion_methods { return GetVersion_methods{} } +func AttachToContainer() AttachToContainer_methods { return AttachToContainer_methods{} } -func (m GetVersion_methods) Call(c *varlink.Connection) (version_out_ Version, err_ error) { - receive, err_ := m.Send(c, 0) - if err_ != nil { - return - } - version_out_, _, err_ = receive() - return -} - -func (m GetVersion_methods) Send(c *varlink.Connection, flags uint64) (func() (Version, uint64, error), error) { - receive, err := c.Send("io.projectatomic.podman.GetVersion", nil, flags) - if err != nil { - return nil, err - } - return func() (version_out_ Version, flags uint64, err error) { - var out struct { - Version Version `json:"version"` - } - flags, err = receive(&out) - if err != nil { - return - } - version_out_ = out.Version - return - }, nil -} - -type PauseContainer_methods struct{} - -func PauseContainer() PauseContainer_methods { return PauseContainer_methods{} } - -func (m PauseContainer_methods) Call(c *varlink.Connection, name_in_ string) (container_out_ string, err_ error) { - receive, err_ := m.Send(c, 0, name_in_) - if err_ != nil { - return - } - container_out_, _, err_ = receive() - return -} - -func (m PauseContainer_methods) Send(c *varlink.Connection, flags uint64, name_in_ string) (func() (string, uint64, error), error) { - var in struct { - Name string `json:"name"` - } - in.Name = name_in_ - receive, err := c.Send("io.projectatomic.podman.PauseContainer", in, flags) - if err != nil { - return nil, err - } - return func() (container_out_ string, flags uint64, err error) { - var out struct { - Container string `json:"container"` - } - flags, err = receive(&out) - if err != nil { - return - } - container_out_ = out.Container - return - }, nil -} - -type BuildImage_methods struct{} - -func BuildImage() BuildImage_methods { return BuildImage_methods{} } - -func (m BuildImage_methods) Call(c *varlink.Connection) (notimplemented_out_ NotImplemented, err_ error) { +func (m AttachToContainer_methods) Call(c *varlink.Connection) (notimplemented_out_ NotImplemented, err_ error) { receive, err_ := m.Send(c, 0) if err_ != nil { return @@ -238,8 +172,8 @@ func (m BuildImage_methods) Call(c *varlink.Connection) (notimplemented_out_ Not return } -func (m BuildImage_methods) Send(c *varlink.Connection, flags uint64) (func() (NotImplemented, uint64, error), error) { - receive, err := c.Send("io.projectatomic.podman.BuildImage", nil, flags) +func (m AttachToContainer_methods) Send(c *varlink.Connection, flags uint64) (func() (NotImplemented, uint64, error), error) { + receive, err := c.Send("io.projectatomic.podman.AttachToContainer", nil, flags) if err != nil { return nil, err } @@ -256,6 +190,237 @@ func (m BuildImage_methods) Send(c *varlink.Connection, flags uint64) (func() (N }, nil } +type WaitContainer_methods struct{} + +func WaitContainer() WaitContainer_methods { return WaitContainer_methods{} } + +func (m WaitContainer_methods) Call(c *varlink.Connection, name_in_ string) (exitcode_out_ int64, err_ error) { + receive, err_ := m.Send(c, 0, name_in_) + if err_ != nil { + return + } + exitcode_out_, _, err_ = receive() + return +} + +func (m WaitContainer_methods) Send(c *varlink.Connection, flags uint64, name_in_ string) (func() (int64, uint64, error), error) { + var in struct { + Name string `json:"name"` + } + in.Name = name_in_ + receive, err := c.Send("io.projectatomic.podman.WaitContainer", in, flags) + if err != nil { + return nil, err + } + return func() (exitcode_out_ int64, flags uint64, err error) { + var out struct { + Exitcode int64 `json:"exitcode"` + } + flags, err = receive(&out) + if err != nil { + return + } + exitcode_out_ = out.Exitcode + return + }, nil +} + +type DeleteUnusedImages_methods struct{} + +func DeleteUnusedImages() DeleteUnusedImages_methods { return DeleteUnusedImages_methods{} } + +func (m DeleteUnusedImages_methods) Call(c *varlink.Connection) (images_out_ []string, err_ error) { + receive, err_ := m.Send(c, 0) + if err_ != nil { + return + } + images_out_, _, err_ = receive() + return +} + +func (m DeleteUnusedImages_methods) Send(c *varlink.Connection, flags uint64) (func() ([]string, uint64, error), error) { + receive, err := c.Send("io.projectatomic.podman.DeleteUnusedImages", nil, flags) + if err != nil { + return nil, err + } + return func() (images_out_ []string, flags uint64, err error) { + var out struct { + Images []string `json:"images"` + } + flags, err = receive(&out) + if err != nil { + return + } + images_out_ = []string(out.Images) + return + }, nil +} + +type GetInfo_methods struct{} + +func GetInfo() GetInfo_methods { return GetInfo_methods{} } + +func (m GetInfo_methods) Call(c *varlink.Connection) (info_out_ PodmanInfo, err_ error) { + receive, err_ := m.Send(c, 0) + if err_ != nil { + return + } + info_out_, _, err_ = receive() + return +} + +func (m GetInfo_methods) Send(c *varlink.Connection, flags uint64) (func() (PodmanInfo, uint64, error), error) { + receive, err := c.Send("io.projectatomic.podman.GetInfo", nil, flags) + if err != nil { + return nil, err + } + return func() (info_out_ PodmanInfo, flags uint64, err error) { + var out struct { + Info PodmanInfo `json:"info"` + } + flags, err = receive(&out) + if err != nil { + return + } + info_out_ = out.Info + return + }, nil +} + +type GetContainer_methods struct{} + +func GetContainer() GetContainer_methods { return GetContainer_methods{} } + +func (m GetContainer_methods) Call(c *varlink.Connection, name_in_ string) (container_out_ ListContainerData, err_ error) { + receive, err_ := m.Send(c, 0, name_in_) + if err_ != nil { + return + } + container_out_, _, err_ = receive() + return +} + +func (m GetContainer_methods) Send(c *varlink.Connection, flags uint64, name_in_ string) (func() (ListContainerData, uint64, error), error) { + var in struct { + Name string `json:"name"` + } + in.Name = name_in_ + receive, err := c.Send("io.projectatomic.podman.GetContainer", in, flags) + if err != nil { + return nil, err + } + return func() (container_out_ ListContainerData, flags uint64, err error) { + var out struct { + Container ListContainerData `json:"container"` + } + flags, err = receive(&out) + if err != nil { + return + } + container_out_ = out.Container + return + }, nil +} + +type CreateContainer_methods struct{} + +func CreateContainer() CreateContainer_methods { return CreateContainer_methods{} } + +func (m CreateContainer_methods) Call(c *varlink.Connection) (notimplemented_out_ NotImplemented, err_ error) { + receive, err_ := m.Send(c, 0) + if err_ != nil { + return + } + notimplemented_out_, _, err_ = receive() + return +} + +func (m CreateContainer_methods) Send(c *varlink.Connection, flags uint64) (func() (NotImplemented, uint64, error), error) { + receive, err := c.Send("io.projectatomic.podman.CreateContainer", nil, flags) + if err != nil { + return nil, err + } + return func() (notimplemented_out_ NotImplemented, flags uint64, err error) { + var out struct { + Notimplemented NotImplemented `json:"notimplemented"` + } + flags, err = receive(&out) + if err != nil { + return + } + notimplemented_out_ = out.Notimplemented + return + }, nil +} + +type ListContainerProcesses_methods struct{} + +func ListContainerProcesses() ListContainerProcesses_methods { return ListContainerProcesses_methods{} } + +func (m ListContainerProcesses_methods) Call(c *varlink.Connection, name_in_ string, opts_in_ []string) (container_out_ []string, err_ error) { + receive, err_ := m.Send(c, 0, name_in_, opts_in_) + if err_ != nil { + return + } + container_out_, _, err_ = receive() + return +} + +func (m ListContainerProcesses_methods) Send(c *varlink.Connection, flags uint64, name_in_ string, opts_in_ []string) (func() ([]string, uint64, error), error) { + var in struct { + Name string `json:"name"` + Opts []string `json:"opts"` + } + in.Name = name_in_ + in.Opts = []string(opts_in_) + receive, err := c.Send("io.projectatomic.podman.ListContainerProcesses", in, flags) + if err != nil { + return nil, err + } + return func() (container_out_ []string, flags uint64, err error) { + var out struct { + Container []string `json:"container"` + } + flags, err = receive(&out) + if err != nil { + return + } + container_out_ = []string(out.Container) + return + }, nil +} + +type ListImages_methods struct{} + +func ListImages() ListImages_methods { return ListImages_methods{} } + +func (m ListImages_methods) Call(c *varlink.Connection) (images_out_ []ImageInList, err_ error) { + receive, err_ := m.Send(c, 0) + if err_ != nil { + return + } + images_out_, _, err_ = receive() + return +} + +func (m ListImages_methods) Send(c *varlink.Connection, flags uint64) (func() ([]ImageInList, uint64, error), error) { + receive, err := c.Send("io.projectatomic.podman.ListImages", nil, flags) + if err != nil { + return nil, err + } + return func() (images_out_ []ImageInList, flags uint64, err error) { + var out struct { + Images []ImageInList `json:"images"` + } + flags, err = receive(&out) + if err != nil { + return + } + images_out_ = []ImageInList(out.Images) + return + }, nil +} + type TagImage_methods struct{} func TagImage() TagImage_methods { return TagImage_methods{} } @@ -293,68 +458,6 @@ func (m TagImage_methods) Send(c *varlink.Connection, flags uint64, name_in_ str }, nil } -type DeleteUnusedImages_methods struct{} - -func DeleteUnusedImages() DeleteUnusedImages_methods { return DeleteUnusedImages_methods{} } - -func (m DeleteUnusedImages_methods) Call(c *varlink.Connection) (images_out_ []string, err_ error) { - receive, err_ := m.Send(c, 0) - if err_ != nil { - return - } - images_out_, _, err_ = receive() - return -} - -func (m DeleteUnusedImages_methods) Send(c *varlink.Connection, flags uint64) (func() ([]string, uint64, error), error) { - receive, err := c.Send("io.projectatomic.podman.DeleteUnusedImages", nil, flags) - if err != nil { - return nil, err - } - return func() (images_out_ []string, flags uint64, err error) { - var out struct { - Images []string `json:"images"` - } - flags, err = receive(&out) - if err != nil { - return - } - images_out_ = []string(out.Images) - return - }, nil -} - -type CreateFromContainer_methods struct{} - -func CreateFromContainer() CreateFromContainer_methods { return CreateFromContainer_methods{} } - -func (m CreateFromContainer_methods) Call(c *varlink.Connection) (notimplemented_out_ NotImplemented, err_ error) { - receive, err_ := m.Send(c, 0) - if err_ != nil { - return - } - notimplemented_out_, _, err_ = receive() - return -} - -func (m CreateFromContainer_methods) Send(c *varlink.Connection, flags uint64) (func() (NotImplemented, uint64, error), error) { - receive, err := c.Send("io.projectatomic.podman.CreateFromContainer", nil, flags) - if err != nil { - return nil, err - } - return func() (notimplemented_out_ NotImplemented, flags uint64, err error) { - var out struct { - Notimplemented NotImplemented `json:"notimplemented"` - } - flags, err = receive(&out) - if err != nil { - return - } - notimplemented_out_ = out.Notimplemented - return - }, nil -} - type ListContainerChanges_methods struct{} func ListContainerChanges() ListContainerChanges_methods { return ListContainerChanges_methods{} } @@ -390,11 +493,48 @@ func (m ListContainerChanges_methods) Send(c *varlink.Connection, flags uint64, }, nil } -type StartContainer_methods struct{} +type ExportContainer_methods struct{} -func StartContainer() StartContainer_methods { return StartContainer_methods{} } +func ExportContainer() ExportContainer_methods { return ExportContainer_methods{} } -func (m StartContainer_methods) Call(c *varlink.Connection) (notimplemented_out_ NotImplemented, err_ error) { +func (m ExportContainer_methods) Call(c *varlink.Connection, name_in_ string, path_in_ string) (tarfile_out_ string, err_ error) { + receive, err_ := m.Send(c, 0, name_in_, path_in_) + if err_ != nil { + return + } + tarfile_out_, _, err_ = receive() + return +} + +func (m ExportContainer_methods) Send(c *varlink.Connection, flags uint64, name_in_ string, path_in_ string) (func() (string, uint64, error), error) { + var in struct { + Name string `json:"name"` + Path string `json:"path"` + } + in.Name = name_in_ + in.Path = path_in_ + receive, err := c.Send("io.projectatomic.podman.ExportContainer", in, flags) + if err != nil { + return nil, err + } + return func() (tarfile_out_ string, flags uint64, err error) { + var out struct { + Tarfile string `json:"tarfile"` + } + flags, err = receive(&out) + if err != nil { + return + } + tarfile_out_ = out.Tarfile + return + }, nil +} + +type UpdateContainer_methods struct{} + +func UpdateContainer() UpdateContainer_methods { return UpdateContainer_methods{} } + +func (m UpdateContainer_methods) Call(c *varlink.Connection) (notimplemented_out_ NotImplemented, err_ error) { receive, err_ := m.Send(c, 0) if err_ != nil { return @@ -403,317 +543,8 @@ func (m StartContainer_methods) Call(c *varlink.Connection) (notimplemented_out_ return } -func (m StartContainer_methods) Send(c *varlink.Connection, flags uint64) (func() (NotImplemented, uint64, error), error) { - receive, err := c.Send("io.projectatomic.podman.StartContainer", nil, flags) - if err != nil { - return nil, err - } - return func() (notimplemented_out_ NotImplemented, flags uint64, err error) { - var out struct { - Notimplemented NotImplemented `json:"notimplemented"` - } - flags, err = receive(&out) - if err != nil { - return - } - notimplemented_out_ = out.Notimplemented - return - }, nil -} - -type InspectContainer_methods struct{} - -func InspectContainer() InspectContainer_methods { return InspectContainer_methods{} } - -func (m InspectContainer_methods) Call(c *varlink.Connection, name_in_ string) (container_out_ string, err_ error) { - receive, err_ := m.Send(c, 0, name_in_) - if err_ != nil { - return - } - container_out_, _, err_ = receive() - return -} - -func (m InspectContainer_methods) Send(c *varlink.Connection, flags uint64, name_in_ string) (func() (string, uint64, error), error) { - var in struct { - Name string `json:"name"` - } - in.Name = name_in_ - receive, err := c.Send("io.projectatomic.podman.InspectContainer", in, flags) - if err != nil { - return nil, err - } - return func() (container_out_ string, flags uint64, err error) { - var out struct { - Container string `json:"container"` - } - flags, err = receive(&out) - if err != nil { - return - } - container_out_ = out.Container - return - }, nil -} - -type GetContainerLogs_methods struct{} - -func GetContainerLogs() GetContainerLogs_methods { return GetContainerLogs_methods{} } - -func (m GetContainerLogs_methods) Call(c *varlink.Connection, name_in_ string) (container_out_ []string, err_ error) { - receive, err_ := m.Send(c, 0, name_in_) - if err_ != nil { - return - } - container_out_, _, err_ = receive() - return -} - -func (m GetContainerLogs_methods) Send(c *varlink.Connection, flags uint64, name_in_ string) (func() ([]string, uint64, error), error) { - var in struct { - Name string `json:"name"` - } - in.Name = name_in_ - receive, err := c.Send("io.projectatomic.podman.GetContainerLogs", in, flags) - if err != nil { - return nil, err - } - return func() (container_out_ []string, flags uint64, err error) { - var out struct { - Container []string `json:"container"` - } - flags, err = receive(&out) - if err != nil { - return - } - container_out_ = []string(out.Container) - return - }, nil -} - -type StopContainer_methods struct{} - -func StopContainer() StopContainer_methods { return StopContainer_methods{} } - -func (m StopContainer_methods) Call(c *varlink.Connection, name_in_ string, timeout_in_ int64) (container_out_ string, err_ error) { - receive, err_ := m.Send(c, 0, name_in_, timeout_in_) - if err_ != nil { - return - } - container_out_, _, err_ = receive() - return -} - -func (m StopContainer_methods) Send(c *varlink.Connection, flags uint64, name_in_ string, timeout_in_ int64) (func() (string, uint64, error), error) { - var in struct { - Name string `json:"name"` - Timeout int64 `json:"timeout"` - } - in.Name = name_in_ - in.Timeout = timeout_in_ - receive, err := c.Send("io.projectatomic.podman.StopContainer", in, flags) - if err != nil { - return nil, err - } - return func() (container_out_ string, flags uint64, err error) { - var out struct { - Container string `json:"container"` - } - flags, err = receive(&out) - if err != nil { - return - } - container_out_ = out.Container - return - }, nil -} - -type DeleteStoppedContainers_methods struct{} - -func DeleteStoppedContainers() DeleteStoppedContainers_methods { - return DeleteStoppedContainers_methods{} -} - -func (m DeleteStoppedContainers_methods) Call(c *varlink.Connection) (containers_out_ []string, err_ error) { - receive, err_ := m.Send(c, 0) - if err_ != nil { - return - } - containers_out_, _, err_ = receive() - return -} - -func (m DeleteStoppedContainers_methods) Send(c *varlink.Connection, flags uint64) (func() ([]string, uint64, error), error) { - receive, err := c.Send("io.projectatomic.podman.DeleteStoppedContainers", nil, flags) - if err != nil { - return nil, err - } - return func() (containers_out_ []string, flags uint64, err error) { - var out struct { - Containers []string `json:"containers"` - } - flags, err = receive(&out) - if err != nil { - return - } - containers_out_ = []string(out.Containers) - return - }, nil -} - -type RemoveImage_methods struct{} - -func RemoveImage() RemoveImage_methods { return RemoveImage_methods{} } - -func (m RemoveImage_methods) Call(c *varlink.Connection, name_in_ string, force_in_ bool) (image_out_ string, err_ error) { - receive, err_ := m.Send(c, 0, name_in_, force_in_) - if err_ != nil { - return - } - image_out_, _, err_ = receive() - return -} - -func (m RemoveImage_methods) Send(c *varlink.Connection, flags uint64, name_in_ string, force_in_ bool) (func() (string, uint64, error), error) { - var in struct { - Name string `json:"name"` - Force bool `json:"force"` - } - in.Name = name_in_ - in.Force = force_in_ - receive, err := c.Send("io.projectatomic.podman.RemoveImage", in, flags) - if err != nil { - return nil, err - } - return func() (image_out_ string, flags uint64, err error) { - var out struct { - Image string `json:"image"` - } - flags, err = receive(&out) - if err != nil { - return - } - image_out_ = out.Image - return - }, nil -} - -type ListContainers_methods struct{} - -func ListContainers() ListContainers_methods { return ListContainers_methods{} } - -func (m ListContainers_methods) Call(c *varlink.Connection) (containers_out_ []ListContainerData, err_ error) { - receive, err_ := m.Send(c, 0) - if err_ != nil { - return - } - containers_out_, _, err_ = receive() - return -} - -func (m ListContainers_methods) Send(c *varlink.Connection, flags uint64) (func() ([]ListContainerData, uint64, error), error) { - receive, err := c.Send("io.projectatomic.podman.ListContainers", nil, flags) - if err != nil { - return nil, err - } - return func() (containers_out_ []ListContainerData, flags uint64, err error) { - var out struct { - Containers []ListContainerData `json:"containers"` - } - flags, err = receive(&out) - if err != nil { - return - } - containers_out_ = []ListContainerData(out.Containers) - return - }, nil -} - -type GetContainer_methods struct{} - -func GetContainer() GetContainer_methods { return GetContainer_methods{} } - -func (m GetContainer_methods) Call(c *varlink.Connection, name_in_ string) (container_out_ ListContainerData, err_ error) { - receive, err_ := m.Send(c, 0, name_in_) - if err_ != nil { - return - } - container_out_, _, err_ = receive() - return -} - -func (m GetContainer_methods) Send(c *varlink.Connection, flags uint64, name_in_ string) (func() (ListContainerData, uint64, error), error) { - var in struct { - Name string `json:"name"` - } - in.Name = name_in_ - receive, err := c.Send("io.projectatomic.podman.GetContainer", in, flags) - if err != nil { - return nil, err - } - return func() (container_out_ ListContainerData, flags uint64, err error) { - var out struct { - Container ListContainerData `json:"container"` - } - flags, err = receive(&out) - if err != nil { - return - } - container_out_ = out.Container - return - }, nil -} - -type GetContainerStats_methods struct{} - -func GetContainerStats() GetContainerStats_methods { return GetContainerStats_methods{} } - -func (m GetContainerStats_methods) Call(c *varlink.Connection, name_in_ string) (container_out_ ContainerStats, err_ error) { - receive, err_ := m.Send(c, 0, name_in_) - if err_ != nil { - return - } - container_out_, _, err_ = receive() - return -} - -func (m GetContainerStats_methods) Send(c *varlink.Connection, flags uint64, name_in_ string) (func() (ContainerStats, uint64, error), error) { - var in struct { - Name string `json:"name"` - } - in.Name = name_in_ - receive, err := c.Send("io.projectatomic.podman.GetContainerStats", in, flags) - if err != nil { - return nil, err - } - return func() (container_out_ ContainerStats, flags uint64, err error) { - var out struct { - Container ContainerStats `json:"container"` - } - flags, err = receive(&out) - if err != nil { - return - } - container_out_ = out.Container - return - }, nil -} - -type RenameContainer_methods struct{} - -func RenameContainer() RenameContainer_methods { return RenameContainer_methods{} } - -func (m RenameContainer_methods) Call(c *varlink.Connection) (notimplemented_out_ NotImplemented, err_ error) { - receive, err_ := m.Send(c, 0) - if err_ != nil { - return - } - notimplemented_out_, _, err_ = receive() - return -} - -func (m RenameContainer_methods) Send(c *varlink.Connection, flags uint64) (func() (NotImplemented, uint64, error), error) { - receive, err := c.Send("io.projectatomic.podman.RenameContainer", nil, flags) +func (m UpdateContainer_methods) Send(c *varlink.Connection, flags uint64) (func() (NotImplemented, uint64, error), error) { + receive, err := c.Send("io.projectatomic.podman.UpdateContainer", nil, flags) if err != nil { return nil, err } @@ -765,74 +596,74 @@ func (m UnpauseContainer_methods) Send(c *varlink.Connection, flags uint64, name }, nil } -type HistoryImage_methods struct{} +type GetContainerStats_methods struct{} -func HistoryImage() HistoryImage_methods { return HistoryImage_methods{} } +func GetContainerStats() GetContainerStats_methods { return GetContainerStats_methods{} } -func (m HistoryImage_methods) Call(c *varlink.Connection, name_in_ string) (history_out_ []ImageHistory, err_ error) { +func (m GetContainerStats_methods) Call(c *varlink.Connection, name_in_ string) (container_out_ ContainerStats, err_ error) { receive, err_ := m.Send(c, 0, name_in_) if err_ != nil { return } - history_out_, _, err_ = receive() + container_out_, _, err_ = receive() return } -func (m HistoryImage_methods) Send(c *varlink.Connection, flags uint64, name_in_ string) (func() ([]ImageHistory, uint64, error), error) { +func (m GetContainerStats_methods) Send(c *varlink.Connection, flags uint64, name_in_ string) (func() (ContainerStats, uint64, error), error) { var in struct { Name string `json:"name"` } in.Name = name_in_ - receive, err := c.Send("io.projectatomic.podman.HistoryImage", in, flags) + receive, err := c.Send("io.projectatomic.podman.GetContainerStats", in, flags) if err != nil { return nil, err } - return func() (history_out_ []ImageHistory, flags uint64, err error) { + return func() (container_out_ ContainerStats, flags uint64, err error) { var out struct { - History []ImageHistory `json:"history"` + Container ContainerStats `json:"container"` } flags, err = receive(&out) if err != nil { return } - history_out_ = []ImageHistory(out.History) + container_out_ = out.Container return }, nil } -type ExportContainer_methods struct{} +type StopContainer_methods struct{} -func ExportContainer() ExportContainer_methods { return ExportContainer_methods{} } +func StopContainer() StopContainer_methods { return StopContainer_methods{} } -func (m ExportContainer_methods) Call(c *varlink.Connection, name_in_ string, path_in_ string) (tarfile_out_ string, err_ error) { - receive, err_ := m.Send(c, 0, name_in_, path_in_) +func (m StopContainer_methods) Call(c *varlink.Connection, name_in_ string, timeout_in_ int64) (container_out_ string, err_ error) { + receive, err_ := m.Send(c, 0, name_in_, timeout_in_) if err_ != nil { return } - tarfile_out_, _, err_ = receive() + container_out_, _, err_ = receive() return } -func (m ExportContainer_methods) Send(c *varlink.Connection, flags uint64, name_in_ string, path_in_ string) (func() (string, uint64, error), error) { +func (m StopContainer_methods) Send(c *varlink.Connection, flags uint64, name_in_ string, timeout_in_ int64) (func() (string, uint64, error), error) { var in struct { - Name string `json:"name"` - Path string `json:"path"` + Name string `json:"name"` + Timeout int64 `json:"timeout"` } in.Name = name_in_ - in.Path = path_in_ - receive, err := c.Send("io.projectatomic.podman.ExportContainer", in, flags) + in.Timeout = timeout_in_ + receive, err := c.Send("io.projectatomic.podman.StopContainer", in, flags) if err != nil { return nil, err } - return func() (tarfile_out_ string, flags uint64, err error) { + return func() (container_out_ string, flags uint64, err error) { var out struct { - Tarfile string `json:"tarfile"` + Container string `json:"container"` } flags, err = receive(&out) if err != nil { return } - tarfile_out_ = out.Tarfile + container_out_ = out.Container return }, nil } @@ -874,37 +705,105 @@ func (m RestartContainer_methods) Send(c *varlink.Connection, flags uint64, name }, nil } -type WaitContainer_methods struct{} +type ImportImage_methods struct{} -func WaitContainer() WaitContainer_methods { return WaitContainer_methods{} } +func ImportImage() ImportImage_methods { return ImportImage_methods{} } -func (m WaitContainer_methods) Call(c *varlink.Connection, name_in_ string) (exitcode_out_ int64, err_ error) { - receive, err_ := m.Send(c, 0, name_in_) +func (m ImportImage_methods) Call(c *varlink.Connection, source_in_ string, reference_in_ string, message_in_ string, changes_in_ []string) (image_out_ string, err_ error) { + receive, err_ := m.Send(c, 0, source_in_, reference_in_, message_in_, changes_in_) if err_ != nil { return } - exitcode_out_, _, err_ = receive() + image_out_, _, err_ = receive() return } -func (m WaitContainer_methods) Send(c *varlink.Connection, flags uint64, name_in_ string) (func() (int64, uint64, error), error) { +func (m ImportImage_methods) Send(c *varlink.Connection, flags uint64, source_in_ string, reference_in_ string, message_in_ string, changes_in_ []string) (func() (string, uint64, error), error) { var in struct { - Name string `json:"name"` + Source string `json:"source"` + Reference string `json:"reference"` + Message string `json:"message"` + Changes []string `json:"changes"` } - in.Name = name_in_ - receive, err := c.Send("io.projectatomic.podman.WaitContainer", in, flags) + in.Source = source_in_ + in.Reference = reference_in_ + in.Message = message_in_ + in.Changes = []string(changes_in_) + receive, err := c.Send("io.projectatomic.podman.ImportImage", in, flags) if err != nil { return nil, err } - return func() (exitcode_out_ int64, flags uint64, err error) { + return func() (image_out_ string, flags uint64, err error) { var out struct { - Exitcode int64 `json:"exitcode"` + Image string `json:"image"` } flags, err = receive(&out) if err != nil { return } - exitcode_out_ = out.Exitcode + image_out_ = out.Image + return + }, nil +} + +type ListContainers_methods struct{} + +func ListContainers() ListContainers_methods { return ListContainers_methods{} } + +func (m ListContainers_methods) Call(c *varlink.Connection) (containers_out_ []ListContainerData, err_ error) { + receive, err_ := m.Send(c, 0) + if err_ != nil { + return + } + containers_out_, _, err_ = receive() + return +} + +func (m ListContainers_methods) Send(c *varlink.Connection, flags uint64) (func() ([]ListContainerData, uint64, error), error) { + receive, err := c.Send("io.projectatomic.podman.ListContainers", nil, flags) + if err != nil { + return nil, err + } + return func() (containers_out_ []ListContainerData, flags uint64, err error) { + var out struct { + Containers []ListContainerData `json:"containers"` + } + flags, err = receive(&out) + if err != nil { + return + } + containers_out_ = []ListContainerData(out.Containers) + return + }, nil +} + +type StartContainer_methods struct{} + +func StartContainer() StartContainer_methods { return StartContainer_methods{} } + +func (m StartContainer_methods) Call(c *varlink.Connection) (notimplemented_out_ NotImplemented, err_ error) { + receive, err_ := m.Send(c, 0) + if err_ != nil { + return + } + notimplemented_out_, _, err_ = receive() + return +} + +func (m StartContainer_methods) Send(c *varlink.Connection, flags uint64) (func() (NotImplemented, uint64, error), error) { + receive, err := c.Send("io.projectatomic.podman.StartContainer", nil, flags) + if err != nil { + return nil, err + } + return func() (notimplemented_out_ NotImplemented, flags uint64, err error) { + var out struct { + Notimplemented NotImplemented `json:"notimplemented"` + } + flags, err = receive(&out) + if err != nil { + return + } + notimplemented_out_ = out.Notimplemented return }, nil } @@ -946,11 +845,79 @@ func (m RemoveContainer_methods) Send(c *varlink.Connection, flags uint64, name_ }, nil } -type CreateImage_methods struct{} +type DeleteStoppedContainers_methods struct{} -func CreateImage() CreateImage_methods { return CreateImage_methods{} } +func DeleteStoppedContainers() DeleteStoppedContainers_methods { + return DeleteStoppedContainers_methods{} +} -func (m CreateImage_methods) Call(c *varlink.Connection) (notimplemented_out_ NotImplemented, err_ error) { +func (m DeleteStoppedContainers_methods) Call(c *varlink.Connection) (containers_out_ []string, err_ error) { + receive, err_ := m.Send(c, 0) + if err_ != nil { + return + } + containers_out_, _, err_ = receive() + return +} + +func (m DeleteStoppedContainers_methods) Send(c *varlink.Connection, flags uint64) (func() ([]string, uint64, error), error) { + receive, err := c.Send("io.projectatomic.podman.DeleteStoppedContainers", nil, flags) + if err != nil { + return nil, err + } + return func() (containers_out_ []string, flags uint64, err error) { + var out struct { + Containers []string `json:"containers"` + } + flags, err = receive(&out) + if err != nil { + return + } + containers_out_ = []string(out.Containers) + return + }, nil +} + +type InspectContainer_methods struct{} + +func InspectContainer() InspectContainer_methods { return InspectContainer_methods{} } + +func (m InspectContainer_methods) Call(c *varlink.Connection, name_in_ string) (container_out_ string, err_ error) { + receive, err_ := m.Send(c, 0, name_in_) + if err_ != nil { + return + } + container_out_, _, err_ = receive() + return +} + +func (m InspectContainer_methods) Send(c *varlink.Connection, flags uint64, name_in_ string) (func() (string, uint64, error), error) { + var in struct { + Name string `json:"name"` + } + in.Name = name_in_ + receive, err := c.Send("io.projectatomic.podman.InspectContainer", in, flags) + if err != nil { + return nil, err + } + return func() (container_out_ string, flags uint64, err error) { + var out struct { + Container string `json:"container"` + } + flags, err = receive(&out) + if err != nil { + return + } + container_out_ = out.Container + return + }, nil +} + +type RenameContainer_methods struct{} + +func RenameContainer() RenameContainer_methods { return RenameContainer_methods{} } + +func (m RenameContainer_methods) Call(c *varlink.Connection) (notimplemented_out_ NotImplemented, err_ error) { receive, err_ := m.Send(c, 0) if err_ != nil { return @@ -959,8 +926,8 @@ func (m CreateImage_methods) Call(c *varlink.Connection) (notimplemented_out_ No return } -func (m CreateImage_methods) Send(c *varlink.Connection, flags uint64) (func() (NotImplemented, uint64, error), error) { - receive, err := c.Send("io.projectatomic.podman.CreateImage", nil, flags) +func (m RenameContainer_methods) Send(c *varlink.Connection, flags uint64) (func() (NotImplemented, uint64, error), error) { + receive, err := c.Send("io.projectatomic.podman.RenameContainer", nil, flags) if err != nil { return nil, err } @@ -977,6 +944,138 @@ func (m CreateImage_methods) Send(c *varlink.Connection, flags uint64) (func() ( }, nil } +type BuildImage_methods struct{} + +func BuildImage() BuildImage_methods { return BuildImage_methods{} } + +func (m BuildImage_methods) Call(c *varlink.Connection) (notimplemented_out_ NotImplemented, err_ error) { + receive, err_ := m.Send(c, 0) + if err_ != nil { + return + } + notimplemented_out_, _, err_ = receive() + return +} + +func (m BuildImage_methods) Send(c *varlink.Connection, flags uint64) (func() (NotImplemented, uint64, error), error) { + receive, err := c.Send("io.projectatomic.podman.BuildImage", nil, flags) + if err != nil { + return nil, err + } + return func() (notimplemented_out_ NotImplemented, flags uint64, err error) { + var out struct { + Notimplemented NotImplemented `json:"notimplemented"` + } + flags, err = receive(&out) + if err != nil { + return + } + notimplemented_out_ = out.Notimplemented + return + }, nil +} + +type PullImage_methods struct{} + +func PullImage() PullImage_methods { return PullImage_methods{} } + +func (m PullImage_methods) Call(c *varlink.Connection, name_in_ string) (id_out_ string, err_ error) { + receive, err_ := m.Send(c, 0, name_in_) + if err_ != nil { + return + } + id_out_, _, err_ = receive() + return +} + +func (m PullImage_methods) Send(c *varlink.Connection, flags uint64, name_in_ string) (func() (string, uint64, error), error) { + var in struct { + Name string `json:"name"` + } + in.Name = name_in_ + receive, err := c.Send("io.projectatomic.podman.PullImage", in, flags) + if err != nil { + return nil, err + } + return func() (id_out_ string, flags uint64, err error) { + var out struct { + Id string `json:"id"` + } + flags, err = receive(&out) + if err != nil { + return + } + id_out_ = out.Id + return + }, nil +} + +type Ping_methods struct{} + +func Ping() Ping_methods { return Ping_methods{} } + +func (m Ping_methods) Call(c *varlink.Connection) (ping_out_ StringResponse, err_ error) { + receive, err_ := m.Send(c, 0) + if err_ != nil { + return + } + ping_out_, _, err_ = receive() + return +} + +func (m Ping_methods) Send(c *varlink.Connection, flags uint64) (func() (StringResponse, uint64, error), error) { + receive, err := c.Send("io.projectatomic.podman.Ping", nil, flags) + if err != nil { + return nil, err + } + return func() (ping_out_ StringResponse, flags uint64, err error) { + var out struct { + Ping StringResponse `json:"ping"` + } + flags, err = receive(&out) + if err != nil { + return + } + ping_out_ = out.Ping + return + }, nil +} + +type PauseContainer_methods struct{} + +func PauseContainer() PauseContainer_methods { return PauseContainer_methods{} } + +func (m PauseContainer_methods) Call(c *varlink.Connection, name_in_ string) (container_out_ string, err_ error) { + receive, err_ := m.Send(c, 0, name_in_) + if err_ != nil { + return + } + container_out_, _, err_ = receive() + return +} + +func (m PauseContainer_methods) Send(c *varlink.Connection, flags uint64, name_in_ string) (func() (string, uint64, error), error) { + var in struct { + Name string `json:"name"` + } + in.Name = name_in_ + receive, err := c.Send("io.projectatomic.podman.PauseContainer", in, flags) + if err != nil { + return nil, err + } + return func() (container_out_ string, flags uint64, err error) { + var out struct { + Container string `json:"container"` + } + flags, err = receive(&out) + if err != nil { + return + } + container_out_ = out.Container + return + }, nil +} + type PushImage_methods struct{} func PushImage() PushImage_methods { return PushImage_methods{} } @@ -1016,126 +1115,41 @@ func (m PushImage_methods) Send(c *varlink.Connection, flags uint64, name_in_ st }, nil } -type Ping_methods struct{} +type ExportImage_methods struct{} -func Ping() Ping_methods { return Ping_methods{} } +func ExportImage() ExportImage_methods { return ExportImage_methods{} } -func (m Ping_methods) Call(c *varlink.Connection) (ping_out_ StringResponse, err_ error) { - receive, err_ := m.Send(c, 0) +func (m ExportImage_methods) Call(c *varlink.Connection, name_in_ string, destination_in_ string, compress_in_ bool) (image_out_ string, err_ error) { + receive, err_ := m.Send(c, 0, name_in_, destination_in_, compress_in_) if err_ != nil { return } - ping_out_, _, err_ = receive() + image_out_, _, err_ = receive() return } -func (m Ping_methods) Send(c *varlink.Connection, flags uint64) (func() (StringResponse, uint64, error), error) { - receive, err := c.Send("io.projectatomic.podman.Ping", nil, flags) +func (m ExportImage_methods) Send(c *varlink.Connection, flags uint64, name_in_ string, destination_in_ string, compress_in_ bool) (func() (string, uint64, error), error) { + var in struct { + Name string `json:"name"` + Destination string `json:"destination"` + Compress bool `json:"compress"` + } + in.Name = name_in_ + in.Destination = destination_in_ + in.Compress = compress_in_ + receive, err := c.Send("io.projectatomic.podman.ExportImage", in, flags) if err != nil { return nil, err } - return func() (ping_out_ StringResponse, flags uint64, err error) { + return func() (image_out_ string, flags uint64, err error) { var out struct { - Ping StringResponse `json:"ping"` + Image string `json:"image"` } flags, err = receive(&out) if err != nil { return } - ping_out_ = out.Ping - return - }, nil -} - -type UpdateContainer_methods struct{} - -func UpdateContainer() UpdateContainer_methods { return UpdateContainer_methods{} } - -func (m UpdateContainer_methods) Call(c *varlink.Connection) (notimplemented_out_ NotImplemented, err_ error) { - receive, err_ := m.Send(c, 0) - if err_ != nil { - return - } - notimplemented_out_, _, err_ = receive() - return -} - -func (m UpdateContainer_methods) Send(c *varlink.Connection, flags uint64) (func() (NotImplemented, uint64, error), error) { - receive, err := c.Send("io.projectatomic.podman.UpdateContainer", nil, flags) - if err != nil { - return nil, err - } - return func() (notimplemented_out_ NotImplemented, flags uint64, err error) { - var out struct { - Notimplemented NotImplemented `json:"notimplemented"` - } - flags, err = receive(&out) - if err != nil { - return - } - notimplemented_out_ = out.Notimplemented - return - }, nil -} - -type AttachToContainer_methods struct{} - -func AttachToContainer() AttachToContainer_methods { return AttachToContainer_methods{} } - -func (m AttachToContainer_methods) Call(c *varlink.Connection) (notimplemented_out_ NotImplemented, err_ error) { - receive, err_ := m.Send(c, 0) - if err_ != nil { - return - } - notimplemented_out_, _, err_ = receive() - return -} - -func (m AttachToContainer_methods) Send(c *varlink.Connection, flags uint64) (func() (NotImplemented, uint64, error), error) { - receive, err := c.Send("io.projectatomic.podman.AttachToContainer", nil, flags) - if err != nil { - return nil, err - } - return func() (notimplemented_out_ NotImplemented, flags uint64, err error) { - var out struct { - Notimplemented NotImplemented `json:"notimplemented"` - } - flags, err = receive(&out) - if err != nil { - return - } - notimplemented_out_ = out.Notimplemented - return - }, nil -} - -type ListImages_methods struct{} - -func ListImages() ListImages_methods { return ListImages_methods{} } - -func (m ListImages_methods) Call(c *varlink.Connection) (images_out_ []ImageInList, err_ error) { - receive, err_ := m.Send(c, 0) - if err_ != nil { - return - } - images_out_, _, err_ = receive() - return -} - -func (m ListImages_methods) Send(c *varlink.Connection, flags uint64) (func() ([]ImageInList, uint64, error), error) { - receive, err := c.Send("io.projectatomic.podman.ListImages", nil, flags) - if err != nil { - return nil, err - } - return func() (images_out_ []ImageInList, flags uint64, err error) { - var out struct { - Images []ImageInList `json:"images"` - } - flags, err = receive(&out) - if err != nil { - return - } - images_out_ = []ImageInList(out.Images) + image_out_ = out.Image return }, nil } @@ -1175,68 +1189,70 @@ func (m InspectImage_methods) Send(c *varlink.Connection, flags uint64, name_in_ }, nil } -type PullImage_methods struct{} +type RemoveImage_methods struct{} -func PullImage() PullImage_methods { return PullImage_methods{} } +func RemoveImage() RemoveImage_methods { return RemoveImage_methods{} } -func (m PullImage_methods) Call(c *varlink.Connection, name_in_ string) (id_out_ string, err_ error) { - receive, err_ := m.Send(c, 0, name_in_) +func (m RemoveImage_methods) Call(c *varlink.Connection, name_in_ string, force_in_ bool) (image_out_ string, err_ error) { + receive, err_ := m.Send(c, 0, name_in_, force_in_) if err_ != nil { return } - id_out_, _, err_ = receive() + image_out_, _, err_ = receive() return } -func (m PullImage_methods) Send(c *varlink.Connection, flags uint64, name_in_ string) (func() (string, uint64, error), error) { +func (m RemoveImage_methods) Send(c *varlink.Connection, flags uint64, name_in_ string, force_in_ bool) (func() (string, uint64, error), error) { var in struct { - Name string `json:"name"` + Name string `json:"name"` + Force bool `json:"force"` } in.Name = name_in_ - receive, err := c.Send("io.projectatomic.podman.PullImage", in, flags) + in.Force = force_in_ + receive, err := c.Send("io.projectatomic.podman.RemoveImage", in, flags) if err != nil { return nil, err } - return func() (id_out_ string, flags uint64, err error) { + return func() (image_out_ string, flags uint64, err error) { var out struct { - Id string `json:"id"` + Image string `json:"image"` } flags, err = receive(&out) if err != nil { return } - id_out_ = out.Id + image_out_ = out.Image return }, nil } -type CreateContainer_methods struct{} +type GetVersion_methods struct{} -func CreateContainer() CreateContainer_methods { return CreateContainer_methods{} } +func GetVersion() GetVersion_methods { return GetVersion_methods{} } -func (m CreateContainer_methods) Call(c *varlink.Connection) (notimplemented_out_ NotImplemented, err_ error) { +func (m GetVersion_methods) Call(c *varlink.Connection) (version_out_ Version, err_ error) { receive, err_ := m.Send(c, 0) if err_ != nil { return } - notimplemented_out_, _, err_ = receive() + version_out_, _, err_ = receive() return } -func (m CreateContainer_methods) Send(c *varlink.Connection, flags uint64) (func() (NotImplemented, uint64, error), error) { - receive, err := c.Send("io.projectatomic.podman.CreateContainer", nil, flags) +func (m GetVersion_methods) Send(c *varlink.Connection, flags uint64) (func() (Version, uint64, error), error) { + receive, err := c.Send("io.projectatomic.podman.GetVersion", nil, flags) if err != nil { return nil, err } - return func() (notimplemented_out_ NotImplemented, flags uint64, err error) { + return func() (version_out_ Version, flags uint64, err error) { var out struct { - Notimplemented NotImplemented `json:"notimplemented"` + Version Version `json:"version"` } flags, err = receive(&out) if err != nil { return } - notimplemented_out_ = out.Notimplemented + version_out_ = out.Version return }, nil } @@ -1309,123 +1325,43 @@ func (m KillContainer_methods) Send(c *varlink.Connection, flags uint64, name_in }, nil } -type ImportImage_methods struct{} +type CreateImage_methods struct{} -func ImportImage() ImportImage_methods { return ImportImage_methods{} } +func CreateImage() CreateImage_methods { return CreateImage_methods{} } -func (m ImportImage_methods) Call(c *varlink.Connection, source_in_ string, reference_in_ string, message_in_ string, changes_in_ []string) (image_out_ string, err_ error) { - receive, err_ := m.Send(c, 0, source_in_, reference_in_, message_in_, changes_in_) - if err_ != nil { - return - } - image_out_, _, err_ = receive() - return -} - -func (m ImportImage_methods) Send(c *varlink.Connection, flags uint64, source_in_ string, reference_in_ string, message_in_ string, changes_in_ []string) (func() (string, uint64, error), error) { - var in struct { - Source string `json:"source"` - Reference string `json:"reference"` - Message string `json:"message"` - Changes []string `json:"changes"` - } - in.Source = source_in_ - in.Reference = reference_in_ - in.Message = message_in_ - in.Changes = []string(changes_in_) - receive, err := c.Send("io.projectatomic.podman.ImportImage", in, flags) - if err != nil { - return nil, err - } - return func() (image_out_ string, flags uint64, err error) { - var out struct { - Image string `json:"image"` - } - flags, err = receive(&out) - if err != nil { - return - } - image_out_ = out.Image - return - }, nil -} - -type ExportImage_methods struct{} - -func ExportImage() ExportImage_methods { return ExportImage_methods{} } - -func (m ExportImage_methods) Call(c *varlink.Connection, name_in_ string, destination_in_ string, compress_in_ bool) (image_out_ string, err_ error) { - receive, err_ := m.Send(c, 0, name_in_, destination_in_, compress_in_) - if err_ != nil { - return - } - image_out_, _, err_ = receive() - return -} - -func (m ExportImage_methods) Send(c *varlink.Connection, flags uint64, name_in_ string, destination_in_ string, compress_in_ bool) (func() (string, uint64, error), error) { - var in struct { - Name string `json:"name"` - Destination string `json:"destination"` - Compress bool `json:"compress"` - } - in.Name = name_in_ - in.Destination = destination_in_ - in.Compress = compress_in_ - receive, err := c.Send("io.projectatomic.podman.ExportImage", in, flags) - if err != nil { - return nil, err - } - return func() (image_out_ string, flags uint64, err error) { - var out struct { - Image string `json:"image"` - } - flags, err = receive(&out) - if err != nil { - return - } - image_out_ = out.Image - return - }, nil -} - -type GetInfo_methods struct{} - -func GetInfo() GetInfo_methods { return GetInfo_methods{} } - -func (m GetInfo_methods) Call(c *varlink.Connection) (info_out_ PodmanInfo, err_ error) { +func (m CreateImage_methods) Call(c *varlink.Connection) (notimplemented_out_ NotImplemented, err_ error) { receive, err_ := m.Send(c, 0) if err_ != nil { return } - info_out_, _, err_ = receive() + notimplemented_out_, _, err_ = receive() return } -func (m GetInfo_methods) Send(c *varlink.Connection, flags uint64) (func() (PodmanInfo, uint64, error), error) { - receive, err := c.Send("io.projectatomic.podman.GetInfo", nil, flags) +func (m CreateImage_methods) Send(c *varlink.Connection, flags uint64) (func() (NotImplemented, uint64, error), error) { + receive, err := c.Send("io.projectatomic.podman.CreateImage", nil, flags) if err != nil { return nil, err } - return func() (info_out_ PodmanInfo, flags uint64, err error) { + return func() (notimplemented_out_ NotImplemented, flags uint64, err error) { var out struct { - Info PodmanInfo `json:"info"` + Notimplemented NotImplemented `json:"notimplemented"` } flags, err = receive(&out) if err != nil { return } - info_out_ = out.Info + notimplemented_out_ = out.Notimplemented return }, nil } -type ListContainerProcesses_methods struct{} +type GetContainerLogs_methods struct{} -func ListContainerProcesses() ListContainerProcesses_methods { return ListContainerProcesses_methods{} } +func GetContainerLogs() GetContainerLogs_methods { return GetContainerLogs_methods{} } -func (m ListContainerProcesses_methods) Call(c *varlink.Connection, name_in_ string, opts_in_ []string) (container_out_ []string, err_ error) { - receive, err_ := m.Send(c, 0, name_in_, opts_in_) +func (m GetContainerLogs_methods) Call(c *varlink.Connection, name_in_ string) (container_out_ []string, err_ error) { + receive, err_ := m.Send(c, 0, name_in_) if err_ != nil { return } @@ -1433,14 +1369,12 @@ func (m ListContainerProcesses_methods) Call(c *varlink.Connection, name_in_ str return } -func (m ListContainerProcesses_methods) Send(c *varlink.Connection, flags uint64, name_in_ string, opts_in_ []string) (func() ([]string, uint64, error), error) { +func (m GetContainerLogs_methods) Send(c *varlink.Connection, flags uint64, name_in_ string) (func() ([]string, uint64, error), error) { var in struct { - Name string `json:"name"` - Opts []string `json:"opts"` + Name string `json:"name"` } in.Name = name_in_ - in.Opts = []string(opts_in_) - receive, err := c.Send("io.projectatomic.podman.ListContainerProcesses", in, flags) + receive, err := c.Send("io.projectatomic.podman.GetContainerLogs", in, flags) if err != nil { return nil, err } @@ -1457,6 +1391,41 @@ func (m ListContainerProcesses_methods) Send(c *varlink.Connection, flags uint64 }, nil } +type HistoryImage_methods struct{} + +func HistoryImage() HistoryImage_methods { return HistoryImage_methods{} } + +func (m HistoryImage_methods) Call(c *varlink.Connection, name_in_ string) (history_out_ []ImageHistory, err_ error) { + receive, err_ := m.Send(c, 0, name_in_) + if err_ != nil { + return + } + history_out_, _, err_ = receive() + return +} + +func (m HistoryImage_methods) Send(c *varlink.Connection, flags uint64, name_in_ string) (func() ([]ImageHistory, uint64, error), error) { + var in struct { + Name string `json:"name"` + } + in.Name = name_in_ + receive, err := c.Send("io.projectatomic.podman.HistoryImage", in, flags) + if err != nil { + return nil, err + } + return func() (history_out_ []ImageHistory, flags uint64, err error) { + var out struct { + History []ImageHistory `json:"history"` + } + flags, err = receive(&out) + if err != nil { + return + } + history_out_ = []ImageHistory(out.History) + return + }, nil +} + type SearchImage_methods struct{} func SearchImage() SearchImage_methods { return SearchImage_methods{} } @@ -1494,53 +1463,106 @@ func (m SearchImage_methods) Send(c *varlink.Connection, flags uint64, name_in_ }, nil } +type Commit_methods struct{} + +func Commit() Commit_methods { return Commit_methods{} } + +func (m Commit_methods) Call(c *varlink.Connection, name_in_ string, image_name_in_ string, changes_in_ []string, author_in_ string, message_in_ string, pause_in_ bool) (image_out_ string, err_ error) { + receive, err_ := m.Send(c, 0, name_in_, image_name_in_, changes_in_, author_in_, message_in_, pause_in_) + if err_ != nil { + return + } + image_out_, _, err_ = receive() + return +} + +func (m Commit_methods) Send(c *varlink.Connection, flags uint64, name_in_ string, image_name_in_ string, changes_in_ []string, author_in_ string, message_in_ string, pause_in_ bool) (func() (string, uint64, error), error) { + var in struct { + Name string `json:"name"` + Image_name string `json:"image_name"` + Changes []string `json:"changes"` + Author string `json:"author"` + Message string `json:"message"` + Pause bool `json:"pause"` + } + in.Name = name_in_ + in.Image_name = image_name_in_ + in.Changes = []string(changes_in_) + in.Author = author_in_ + in.Message = message_in_ + in.Pause = pause_in_ + receive, err := c.Send("io.projectatomic.podman.Commit", in, flags) + if err != nil { + return nil, err + } + return func() (image_out_ string, flags uint64, err error) { + var out struct { + Image string `json:"image"` + } + flags, err = receive(&out) + if err != nil { + return + } + image_out_ = out.Image + return + }, nil +} + // Service interface with all methods type ioprojectatomicpodmanInterface interface { - InspectContainer(c VarlinkCall, name_ string) error - GetContainerLogs(c VarlinkCall, name_ string) error - StopContainer(c VarlinkCall, name_ string, timeout_ int64) error - DeleteStoppedContainers(c VarlinkCall) error - RemoveImage(c VarlinkCall, name_ string, force_ bool) error - HistoryImage(c VarlinkCall, name_ string) error - ListContainers(c VarlinkCall) error - GetContainer(c VarlinkCall, name_ string) error GetContainerStats(c VarlinkCall, name_ string) error - RenameContainer(c VarlinkCall) error - UnpauseContainer(c VarlinkCall, name_ string) error - PushImage(c VarlinkCall, name_ string, tag_ string, tlsverify_ bool) error - ExportContainer(c VarlinkCall, name_ string, path_ string) error + StopContainer(c VarlinkCall, name_ string, timeout_ int64) error RestartContainer(c VarlinkCall, name_ string, timeout_ int64) error - WaitContainer(c VarlinkCall, name_ string) error + ImportImage(c VarlinkCall, source_ string, reference_ string, message_ string, changes_ []string) error + ListContainers(c VarlinkCall) error + StartContainer(c VarlinkCall) error RemoveContainer(c VarlinkCall, name_ string, force_ bool) error - CreateImage(c VarlinkCall) error - PullImage(c VarlinkCall, name_ string) error + DeleteStoppedContainers(c VarlinkCall) error + InspectContainer(c VarlinkCall, name_ string) error + RenameContainer(c VarlinkCall) error + BuildImage(c VarlinkCall) error Ping(c VarlinkCall) error - UpdateContainer(c VarlinkCall) error - AttachToContainer(c VarlinkCall) error - ListImages(c VarlinkCall) error - InspectImage(c VarlinkCall, name_ string) error - CreateContainer(c VarlinkCall) error + PauseContainer(c VarlinkCall, name_ string) error + PushImage(c VarlinkCall, name_ string, tag_ string, tlsverify_ bool) error + ExportImage(c VarlinkCall, name_ string, destination_ string, compress_ bool) error + PullImage(c VarlinkCall, name_ string) error + RemoveImage(c VarlinkCall, name_ string, force_ bool) error + GetVersion(c VarlinkCall) error ResizeContainerTty(c VarlinkCall) error KillContainer(c VarlinkCall, name_ string, signal_ int64) error - ImportImage(c VarlinkCall, source_ string, reference_ string, message_ string, changes_ []string) error - ExportImage(c VarlinkCall, name_ string, destination_ string, compress_ bool) error - GetInfo(c VarlinkCall) error - ListContainerProcesses(c VarlinkCall, name_ string, opts_ []string) error + CreateImage(c VarlinkCall) error + InspectImage(c VarlinkCall, name_ string) error + GetContainerLogs(c VarlinkCall, name_ string) error + HistoryImage(c VarlinkCall, name_ string) error SearchImage(c VarlinkCall, name_ string, limit_ int64) error - CreateFromContainer(c VarlinkCall) error - GetVersion(c VarlinkCall) error - PauseContainer(c VarlinkCall, name_ string) error - BuildImage(c VarlinkCall) error - TagImage(c VarlinkCall, name_ string, tagged_ string) error + Commit(c VarlinkCall, name_ string, image_name_ string, changes_ []string, author_ string, message_ string, pause_ bool) error + WaitContainer(c VarlinkCall, name_ string) error DeleteUnusedImages(c VarlinkCall) error + GetInfo(c VarlinkCall) error + GetContainer(c VarlinkCall, name_ string) error + CreateContainer(c VarlinkCall) error + ListContainerProcesses(c VarlinkCall, name_ string, opts_ []string) error + AttachToContainer(c VarlinkCall) error + TagImage(c VarlinkCall, name_ string, tagged_ string) error ListContainerChanges(c VarlinkCall, name_ string) error - StartContainer(c VarlinkCall) error + ExportContainer(c VarlinkCall, name_ string, path_ string) error + UpdateContainer(c VarlinkCall) error + UnpauseContainer(c VarlinkCall, name_ string) error + ListImages(c VarlinkCall) error } // Service object with all methods type VarlinkCall struct{ varlink.Call } // Reply methods for all varlink errors +func (c *VarlinkCall) ReplyImageNotFound(name_ string) error { + var out struct { + Name string `json:"name"` + } + out.Name = name_ + return c.ReplyError("io.projectatomic.podman.ImageNotFound", &out) +} + func (c *VarlinkCall) ReplyContainerNotFound(name_ string) error { var out struct { Name string `json:"name"` @@ -1565,44 +1587,20 @@ func (c *VarlinkCall) ReplyRuntimeError(reason_ string) error { return c.ReplyError("io.projectatomic.podman.RuntimeError", &out) } -func (c *VarlinkCall) ReplyImageNotFound(name_ string) error { - var out struct { - Name string `json:"name"` - } - out.Name = name_ - return c.ReplyError("io.projectatomic.podman.ImageNotFound", &out) -} - // Reply methods for all varlink methods -func (c *VarlinkCall) ReplyRemoveContainer(container_ string) error { +func (c *VarlinkCall) ReplyGetContainerStats(container_ ContainerStats) error { var out struct { - Container string `json:"container"` + Container ContainerStats `json:"container"` } out.Container = container_ return c.Reply(&out) } -func (c *VarlinkCall) ReplyCreateImage(notimplemented_ NotImplemented) error { +func (c *VarlinkCall) ReplyStopContainer(container_ string) error { var out struct { - Notimplemented NotImplemented `json:"notimplemented"` + Container string `json:"container"` } - out.Notimplemented = notimplemented_ - return c.Reply(&out) -} - -func (c *VarlinkCall) ReplyPushImage(image_ string) error { - var out struct { - Image string `json:"image"` - } - out.Image = image_ - return c.Reply(&out) -} - -func (c *VarlinkCall) ReplyExportContainer(tarfile_ string) error { - var out struct { - Tarfile string `json:"tarfile"` - } - out.Tarfile = tarfile_ + out.Container = container_ return c.Reply(&out) } @@ -1614,23 +1612,7 @@ func (c *VarlinkCall) ReplyRestartContainer(container_ string) error { return c.Reply(&out) } -func (c *VarlinkCall) ReplyWaitContainer(exitcode_ int64) error { - var out struct { - Exitcode int64 `json:"exitcode"` - } - out.Exitcode = exitcode_ - return c.Reply(&out) -} - -func (c *VarlinkCall) ReplyListImages(images_ []ImageInList) error { - var out struct { - Images []ImageInList `json:"images"` - } - out.Images = []ImageInList(images_) - return c.Reply(&out) -} - -func (c *VarlinkCall) ReplyInspectImage(image_ string) error { +func (c *VarlinkCall) ReplyImportImage(image_ string) error { var out struct { Image string `json:"image"` } @@ -1638,11 +1620,59 @@ func (c *VarlinkCall) ReplyInspectImage(image_ string) error { return c.Reply(&out) } -func (c *VarlinkCall) ReplyPullImage(id_ string) error { +func (c *VarlinkCall) ReplyListContainers(containers_ []ListContainerData) error { var out struct { - Id string `json:"id"` + Containers []ListContainerData `json:"containers"` } - out.Id = id_ + out.Containers = []ListContainerData(containers_) + return c.Reply(&out) +} + +func (c *VarlinkCall) ReplyStartContainer(notimplemented_ NotImplemented) error { + var out struct { + Notimplemented NotImplemented `json:"notimplemented"` + } + out.Notimplemented = notimplemented_ + return c.Reply(&out) +} + +func (c *VarlinkCall) ReplyRemoveContainer(container_ string) error { + var out struct { + Container string `json:"container"` + } + out.Container = container_ + return c.Reply(&out) +} + +func (c *VarlinkCall) ReplyDeleteStoppedContainers(containers_ []string) error { + var out struct { + Containers []string `json:"containers"` + } + out.Containers = []string(containers_) + return c.Reply(&out) +} + +func (c *VarlinkCall) ReplyInspectContainer(container_ string) error { + var out struct { + Container string `json:"container"` + } + out.Container = container_ + return c.Reply(&out) +} + +func (c *VarlinkCall) ReplyRenameContainer(notimplemented_ NotImplemented) error { + var out struct { + Notimplemented NotImplemented `json:"notimplemented"` + } + out.Notimplemented = notimplemented_ + return c.Reply(&out) +} + +func (c *VarlinkCall) ReplyBuildImage(notimplemented_ NotImplemented) error { + var out struct { + Notimplemented NotImplemented `json:"notimplemented"` + } + out.Notimplemented = notimplemented_ return c.Reply(&out) } @@ -1654,23 +1684,15 @@ func (c *VarlinkCall) ReplyPing(ping_ StringResponse) error { return c.Reply(&out) } -func (c *VarlinkCall) ReplyUpdateContainer(notimplemented_ NotImplemented) error { +func (c *VarlinkCall) ReplyPauseContainer(container_ string) error { var out struct { - Notimplemented NotImplemented `json:"notimplemented"` + Container string `json:"container"` } - out.Notimplemented = notimplemented_ + out.Container = container_ return c.Reply(&out) } -func (c *VarlinkCall) ReplyAttachToContainer(notimplemented_ NotImplemented) error { - var out struct { - Notimplemented NotImplemented `json:"notimplemented"` - } - out.Notimplemented = notimplemented_ - return c.Reply(&out) -} - -func (c *VarlinkCall) ReplyImportImage(image_ string) error { +func (c *VarlinkCall) ReplyPushImage(image_ string) error { var out struct { Image string `json:"image"` } @@ -1686,11 +1708,19 @@ func (c *VarlinkCall) ReplyExportImage(image_ string) error { return c.Reply(&out) } -func (c *VarlinkCall) ReplyCreateContainer(notimplemented_ NotImplemented) error { +func (c *VarlinkCall) ReplyPullImage(id_ string) error { var out struct { - Notimplemented NotImplemented `json:"notimplemented"` + Id string `json:"id"` } - out.Notimplemented = notimplemented_ + out.Id = id_ + return c.Reply(&out) +} + +func (c *VarlinkCall) ReplyGetVersion(version_ Version) error { + var out struct { + Version Version `json:"version"` + } + out.Version = version_ return c.Reply(&out) } @@ -1710,31 +1740,15 @@ func (c *VarlinkCall) ReplyKillContainer(container_ string) error { return c.Reply(&out) } -func (c *VarlinkCall) ReplyGetInfo(info_ PodmanInfo) error { +func (c *VarlinkCall) ReplyCreateImage(notimplemented_ NotImplemented) error { var out struct { - Info PodmanInfo `json:"info"` + Notimplemented NotImplemented `json:"notimplemented"` } - out.Info = info_ + out.Notimplemented = notimplemented_ return c.Reply(&out) } -func (c *VarlinkCall) ReplyListContainerProcesses(container_ []string) error { - var out struct { - Container []string `json:"container"` - } - out.Container = []string(container_) - return c.Reply(&out) -} - -func (c *VarlinkCall) ReplySearchImage(images_ []ImageSearch) error { - var out struct { - Images []ImageSearch `json:"images"` - } - out.Images = []ImageSearch(images_) - return c.Reply(&out) -} - -func (c *VarlinkCall) ReplyTagImage(image_ string) error { +func (c *VarlinkCall) ReplyInspectImage(image_ string) error { var out struct { Image string `json:"image"` } @@ -1742,70 +1756,6 @@ func (c *VarlinkCall) ReplyTagImage(image_ string) error { return c.Reply(&out) } -func (c *VarlinkCall) ReplyDeleteUnusedImages(images_ []string) error { - var out struct { - Images []string `json:"images"` - } - out.Images = []string(images_) - return c.Reply(&out) -} - -func (c *VarlinkCall) ReplyCreateFromContainer(notimplemented_ NotImplemented) error { - var out struct { - Notimplemented NotImplemented `json:"notimplemented"` - } - out.Notimplemented = notimplemented_ - return c.Reply(&out) -} - -func (c *VarlinkCall) ReplyGetVersion(version_ Version) error { - var out struct { - Version Version `json:"version"` - } - out.Version = version_ - return c.Reply(&out) -} - -func (c *VarlinkCall) ReplyPauseContainer(container_ string) error { - var out struct { - Container string `json:"container"` - } - out.Container = container_ - return c.Reply(&out) -} - -func (c *VarlinkCall) ReplyBuildImage(notimplemented_ NotImplemented) error { - var out struct { - Notimplemented NotImplemented `json:"notimplemented"` - } - out.Notimplemented = notimplemented_ - return c.Reply(&out) -} - -func (c *VarlinkCall) ReplyListContainerChanges(container_ ContainerChanges) error { - var out struct { - Container ContainerChanges `json:"container"` - } - out.Container = container_ - return c.Reply(&out) -} - -func (c *VarlinkCall) ReplyStartContainer(notimplemented_ NotImplemented) error { - var out struct { - Notimplemented NotImplemented `json:"notimplemented"` - } - out.Notimplemented = notimplemented_ - return c.Reply(&out) -} - -func (c *VarlinkCall) ReplyDeleteStoppedContainers(containers_ []string) error { - var out struct { - Containers []string `json:"containers"` - } - out.Containers = []string(containers_) - return c.Reply(&out) -} - func (c *VarlinkCall) ReplyRemoveImage(image_ string) error { var out struct { Image string `json:"image"` @@ -1814,14 +1764,6 @@ func (c *VarlinkCall) ReplyRemoveImage(image_ string) error { return c.Reply(&out) } -func (c *VarlinkCall) ReplyInspectContainer(container_ string) error { - var out struct { - Container string `json:"container"` - } - out.Container = container_ - return c.Reply(&out) -} - func (c *VarlinkCall) ReplyGetContainerLogs(container_ []string) error { var out struct { Container []string `json:"container"` @@ -1830,15 +1772,103 @@ func (c *VarlinkCall) ReplyGetContainerLogs(container_ []string) error { return c.Reply(&out) } -func (c *VarlinkCall) ReplyStopContainer(container_ string) error { +func (c *VarlinkCall) ReplyHistoryImage(history_ []ImageHistory) error { var out struct { - Container string `json:"container"` + History []ImageHistory `json:"history"` + } + out.History = []ImageHistory(history_) + return c.Reply(&out) +} + +func (c *VarlinkCall) ReplySearchImage(images_ []ImageSearch) error { + var out struct { + Images []ImageSearch `json:"images"` + } + out.Images = []ImageSearch(images_) + return c.Reply(&out) +} + +func (c *VarlinkCall) ReplyCommit(image_ string) error { + var out struct { + Image string `json:"image"` + } + out.Image = image_ + return c.Reply(&out) +} + +func (c *VarlinkCall) ReplyGetInfo(info_ PodmanInfo) error { + var out struct { + Info PodmanInfo `json:"info"` + } + out.Info = info_ + return c.Reply(&out) +} + +func (c *VarlinkCall) ReplyGetContainer(container_ ListContainerData) error { + var out struct { + Container ListContainerData `json:"container"` } out.Container = container_ return c.Reply(&out) } -func (c *VarlinkCall) ReplyRenameContainer(notimplemented_ NotImplemented) error { +func (c *VarlinkCall) ReplyCreateContainer(notimplemented_ NotImplemented) error { + var out struct { + Notimplemented NotImplemented `json:"notimplemented"` + } + out.Notimplemented = notimplemented_ + return c.Reply(&out) +} + +func (c *VarlinkCall) ReplyListContainerProcesses(container_ []string) error { + var out struct { + Container []string `json:"container"` + } + out.Container = []string(container_) + return c.Reply(&out) +} + +func (c *VarlinkCall) ReplyAttachToContainer(notimplemented_ NotImplemented) error { + var out struct { + Notimplemented NotImplemented `json:"notimplemented"` + } + out.Notimplemented = notimplemented_ + return c.Reply(&out) +} + +func (c *VarlinkCall) ReplyWaitContainer(exitcode_ int64) error { + var out struct { + Exitcode int64 `json:"exitcode"` + } + out.Exitcode = exitcode_ + return c.Reply(&out) +} + +func (c *VarlinkCall) ReplyDeleteUnusedImages(images_ []string) error { + var out struct { + Images []string `json:"images"` + } + out.Images = []string(images_) + return c.Reply(&out) +} + +func (c *VarlinkCall) ReplyListContainerChanges(container_ ContainerChanges) error { + var out struct { + Container ContainerChanges `json:"container"` + } + out.Container = container_ + return c.Reply(&out) +} + +func (c *VarlinkCall) ReplyExportContainer(tarfile_ string) error { + var out struct { + Tarfile string `json:"tarfile"` + } + out.Tarfile = tarfile_ + return c.Reply(&out) +} + +func (c *VarlinkCall) ReplyUpdateContainer(notimplemented_ NotImplemented) error { var out struct { Notimplemented NotImplemented `json:"notimplemented"` } @@ -1854,141 +1884,45 @@ func (c *VarlinkCall) ReplyUnpauseContainer(container_ string) error { return c.Reply(&out) } -func (c *VarlinkCall) ReplyHistoryImage(history_ []ImageHistory) error { +func (c *VarlinkCall) ReplyListImages(images_ []ImageInList) error { var out struct { - History []ImageHistory `json:"history"` + Images []ImageInList `json:"images"` } - out.History = []ImageHistory(history_) + out.Images = []ImageInList(images_) return c.Reply(&out) } -func (c *VarlinkCall) ReplyListContainers(containers_ []ListContainerData) error { +func (c *VarlinkCall) ReplyTagImage(image_ string) error { var out struct { - Containers []ListContainerData `json:"containers"` + Image string `json:"image"` } - out.Containers = []ListContainerData(containers_) - return c.Reply(&out) -} - -func (c *VarlinkCall) ReplyGetContainer(container_ ListContainerData) error { - var out struct { - Container ListContainerData `json:"container"` - } - out.Container = container_ - return c.Reply(&out) -} - -func (c *VarlinkCall) ReplyGetContainerStats(container_ ContainerStats) error { - var out struct { - Container ContainerStats `json:"container"` - } - out.Container = container_ + out.Image = image_ return c.Reply(&out) } // Dummy implementations for all varlink methods -func (s *VarlinkInterface) ListContainerChanges(c VarlinkCall, name_ string) error { - return c.ReplyMethodNotImplemented("io.projectatomic.podman.ListContainerChanges") +func (s *VarlinkInterface) Ping(c VarlinkCall) error { + return c.ReplyMethodNotImplemented("io.projectatomic.podman.Ping") } -func (s *VarlinkInterface) StartContainer(c VarlinkCall) error { - return c.ReplyMethodNotImplemented("io.projectatomic.podman.StartContainer") -} - -func (s *VarlinkInterface) InspectContainer(c VarlinkCall, name_ string) error { - return c.ReplyMethodNotImplemented("io.projectatomic.podman.InspectContainer") -} - -func (s *VarlinkInterface) GetContainerLogs(c VarlinkCall, name_ string) error { - return c.ReplyMethodNotImplemented("io.projectatomic.podman.GetContainerLogs") -} - -func (s *VarlinkInterface) StopContainer(c VarlinkCall, name_ string, timeout_ int64) error { - return c.ReplyMethodNotImplemented("io.projectatomic.podman.StopContainer") -} - -func (s *VarlinkInterface) DeleteStoppedContainers(c VarlinkCall) error { - return c.ReplyMethodNotImplemented("io.projectatomic.podman.DeleteStoppedContainers") -} - -func (s *VarlinkInterface) RemoveImage(c VarlinkCall, name_ string, force_ bool) error { - return c.ReplyMethodNotImplemented("io.projectatomic.podman.RemoveImage") -} - -func (s *VarlinkInterface) ListContainers(c VarlinkCall) error { - return c.ReplyMethodNotImplemented("io.projectatomic.podman.ListContainers") -} - -func (s *VarlinkInterface) GetContainer(c VarlinkCall, name_ string) error { - return c.ReplyMethodNotImplemented("io.projectatomic.podman.GetContainer") -} - -func (s *VarlinkInterface) GetContainerStats(c VarlinkCall, name_ string) error { - return c.ReplyMethodNotImplemented("io.projectatomic.podman.GetContainerStats") -} - -func (s *VarlinkInterface) RenameContainer(c VarlinkCall) error { - return c.ReplyMethodNotImplemented("io.projectatomic.podman.RenameContainer") -} - -func (s *VarlinkInterface) UnpauseContainer(c VarlinkCall, name_ string) error { - return c.ReplyMethodNotImplemented("io.projectatomic.podman.UnpauseContainer") -} - -func (s *VarlinkInterface) HistoryImage(c VarlinkCall, name_ string) error { - return c.ReplyMethodNotImplemented("io.projectatomic.podman.HistoryImage") -} - -func (s *VarlinkInterface) ExportContainer(c VarlinkCall, name_ string, path_ string) error { - return c.ReplyMethodNotImplemented("io.projectatomic.podman.ExportContainer") -} - -func (s *VarlinkInterface) RestartContainer(c VarlinkCall, name_ string, timeout_ int64) error { - return c.ReplyMethodNotImplemented("io.projectatomic.podman.RestartContainer") -} - -func (s *VarlinkInterface) WaitContainer(c VarlinkCall, name_ string) error { - return c.ReplyMethodNotImplemented("io.projectatomic.podman.WaitContainer") -} - -func (s *VarlinkInterface) RemoveContainer(c VarlinkCall, name_ string, force_ bool) error { - return c.ReplyMethodNotImplemented("io.projectatomic.podman.RemoveContainer") -} - -func (s *VarlinkInterface) CreateImage(c VarlinkCall) error { - return c.ReplyMethodNotImplemented("io.projectatomic.podman.CreateImage") +func (s *VarlinkInterface) PauseContainer(c VarlinkCall, name_ string) error { + return c.ReplyMethodNotImplemented("io.projectatomic.podman.PauseContainer") } func (s *VarlinkInterface) PushImage(c VarlinkCall, name_ string, tag_ string, tlsverify_ bool) error { return c.ReplyMethodNotImplemented("io.projectatomic.podman.PushImage") } -func (s *VarlinkInterface) Ping(c VarlinkCall) error { - return c.ReplyMethodNotImplemented("io.projectatomic.podman.Ping") -} - -func (s *VarlinkInterface) UpdateContainer(c VarlinkCall) error { - return c.ReplyMethodNotImplemented("io.projectatomic.podman.UpdateContainer") -} - -func (s *VarlinkInterface) AttachToContainer(c VarlinkCall) error { - return c.ReplyMethodNotImplemented("io.projectatomic.podman.AttachToContainer") -} - -func (s *VarlinkInterface) ListImages(c VarlinkCall) error { - return c.ReplyMethodNotImplemented("io.projectatomic.podman.ListImages") -} - -func (s *VarlinkInterface) InspectImage(c VarlinkCall, name_ string) error { - return c.ReplyMethodNotImplemented("io.projectatomic.podman.InspectImage") +func (s *VarlinkInterface) ExportImage(c VarlinkCall, name_ string, destination_ string, compress_ bool) error { + return c.ReplyMethodNotImplemented("io.projectatomic.podman.ExportImage") } func (s *VarlinkInterface) PullImage(c VarlinkCall, name_ string) error { return c.ReplyMethodNotImplemented("io.projectatomic.podman.PullImage") } -func (s *VarlinkInterface) CreateContainer(c VarlinkCall) error { - return c.ReplyMethodNotImplemented("io.projectatomic.podman.CreateContainer") +func (s *VarlinkInterface) GetVersion(c VarlinkCall) error { + return c.ReplyMethodNotImplemented("io.projectatomic.podman.GetVersion") } func (s *VarlinkInterface) ResizeContainerTty(c VarlinkCall) error { @@ -1999,66 +1933,133 @@ func (s *VarlinkInterface) KillContainer(c VarlinkCall, name_ string, signal_ in return c.ReplyMethodNotImplemented("io.projectatomic.podman.KillContainer") } -func (s *VarlinkInterface) ImportImage(c VarlinkCall, source_ string, reference_ string, message_ string, changes_ []string) error { - return c.ReplyMethodNotImplemented("io.projectatomic.podman.ImportImage") +func (s *VarlinkInterface) CreateImage(c VarlinkCall) error { + return c.ReplyMethodNotImplemented("io.projectatomic.podman.CreateImage") } -func (s *VarlinkInterface) ExportImage(c VarlinkCall, name_ string, destination_ string, compress_ bool) error { - return c.ReplyMethodNotImplemented("io.projectatomic.podman.ExportImage") +func (s *VarlinkInterface) InspectImage(c VarlinkCall, name_ string) error { + return c.ReplyMethodNotImplemented("io.projectatomic.podman.InspectImage") } -func (s *VarlinkInterface) GetInfo(c VarlinkCall) error { - return c.ReplyMethodNotImplemented("io.projectatomic.podman.GetInfo") +func (s *VarlinkInterface) RemoveImage(c VarlinkCall, name_ string, force_ bool) error { + return c.ReplyMethodNotImplemented("io.projectatomic.podman.RemoveImage") } -func (s *VarlinkInterface) ListContainerProcesses(c VarlinkCall, name_ string, opts_ []string) error { - return c.ReplyMethodNotImplemented("io.projectatomic.podman.ListContainerProcesses") +func (s *VarlinkInterface) GetContainerLogs(c VarlinkCall, name_ string) error { + return c.ReplyMethodNotImplemented("io.projectatomic.podman.GetContainerLogs") +} + +func (s *VarlinkInterface) HistoryImage(c VarlinkCall, name_ string) error { + return c.ReplyMethodNotImplemented("io.projectatomic.podman.HistoryImage") } func (s *VarlinkInterface) SearchImage(c VarlinkCall, name_ string, limit_ int64) error { return c.ReplyMethodNotImplemented("io.projectatomic.podman.SearchImage") } -func (s *VarlinkInterface) GetVersion(c VarlinkCall) error { - return c.ReplyMethodNotImplemented("io.projectatomic.podman.GetVersion") +func (s *VarlinkInterface) Commit(c VarlinkCall, name_ string, image_name_ string, changes_ []string, author_ string, message_ string, pause_ bool) error { + return c.ReplyMethodNotImplemented("io.projectatomic.podman.Commit") } -func (s *VarlinkInterface) PauseContainer(c VarlinkCall, name_ string) error { - return c.ReplyMethodNotImplemented("io.projectatomic.podman.PauseContainer") +func (s *VarlinkInterface) GetInfo(c VarlinkCall) error { + return c.ReplyMethodNotImplemented("io.projectatomic.podman.GetInfo") } -func (s *VarlinkInterface) BuildImage(c VarlinkCall) error { - return c.ReplyMethodNotImplemented("io.projectatomic.podman.BuildImage") +func (s *VarlinkInterface) GetContainer(c VarlinkCall, name_ string) error { + return c.ReplyMethodNotImplemented("io.projectatomic.podman.GetContainer") } -func (s *VarlinkInterface) TagImage(c VarlinkCall, name_ string, tagged_ string) error { - return c.ReplyMethodNotImplemented("io.projectatomic.podman.TagImage") +func (s *VarlinkInterface) CreateContainer(c VarlinkCall) error { + return c.ReplyMethodNotImplemented("io.projectatomic.podman.CreateContainer") +} + +func (s *VarlinkInterface) ListContainerProcesses(c VarlinkCall, name_ string, opts_ []string) error { + return c.ReplyMethodNotImplemented("io.projectatomic.podman.ListContainerProcesses") +} + +func (s *VarlinkInterface) AttachToContainer(c VarlinkCall) error { + return c.ReplyMethodNotImplemented("io.projectatomic.podman.AttachToContainer") +} + +func (s *VarlinkInterface) WaitContainer(c VarlinkCall, name_ string) error { + return c.ReplyMethodNotImplemented("io.projectatomic.podman.WaitContainer") } func (s *VarlinkInterface) DeleteUnusedImages(c VarlinkCall) error { return c.ReplyMethodNotImplemented("io.projectatomic.podman.DeleteUnusedImages") } -func (s *VarlinkInterface) CreateFromContainer(c VarlinkCall) error { - return c.ReplyMethodNotImplemented("io.projectatomic.podman.CreateFromContainer") +func (s *VarlinkInterface) ListContainerChanges(c VarlinkCall, name_ string) error { + return c.ReplyMethodNotImplemented("io.projectatomic.podman.ListContainerChanges") +} + +func (s *VarlinkInterface) ExportContainer(c VarlinkCall, name_ string, path_ string) error { + return c.ReplyMethodNotImplemented("io.projectatomic.podman.ExportContainer") +} + +func (s *VarlinkInterface) UpdateContainer(c VarlinkCall) error { + return c.ReplyMethodNotImplemented("io.projectatomic.podman.UpdateContainer") +} + +func (s *VarlinkInterface) UnpauseContainer(c VarlinkCall, name_ string) error { + return c.ReplyMethodNotImplemented("io.projectatomic.podman.UnpauseContainer") +} + +func (s *VarlinkInterface) ListImages(c VarlinkCall) error { + return c.ReplyMethodNotImplemented("io.projectatomic.podman.ListImages") +} + +func (s *VarlinkInterface) TagImage(c VarlinkCall, name_ string, tagged_ string) error { + return c.ReplyMethodNotImplemented("io.projectatomic.podman.TagImage") +} + +func (s *VarlinkInterface) GetContainerStats(c VarlinkCall, name_ string) error { + return c.ReplyMethodNotImplemented("io.projectatomic.podman.GetContainerStats") +} + +func (s *VarlinkInterface) StopContainer(c VarlinkCall, name_ string, timeout_ int64) error { + return c.ReplyMethodNotImplemented("io.projectatomic.podman.StopContainer") +} + +func (s *VarlinkInterface) RestartContainer(c VarlinkCall, name_ string, timeout_ int64) error { + return c.ReplyMethodNotImplemented("io.projectatomic.podman.RestartContainer") +} + +func (s *VarlinkInterface) ImportImage(c VarlinkCall, source_ string, reference_ string, message_ string, changes_ []string) error { + return c.ReplyMethodNotImplemented("io.projectatomic.podman.ImportImage") +} + +func (s *VarlinkInterface) ListContainers(c VarlinkCall) error { + return c.ReplyMethodNotImplemented("io.projectatomic.podman.ListContainers") +} + +func (s *VarlinkInterface) StartContainer(c VarlinkCall) error { + return c.ReplyMethodNotImplemented("io.projectatomic.podman.StartContainer") +} + +func (s *VarlinkInterface) RemoveContainer(c VarlinkCall, name_ string, force_ bool) error { + return c.ReplyMethodNotImplemented("io.projectatomic.podman.RemoveContainer") +} + +func (s *VarlinkInterface) DeleteStoppedContainers(c VarlinkCall) error { + return c.ReplyMethodNotImplemented("io.projectatomic.podman.DeleteStoppedContainers") +} + +func (s *VarlinkInterface) InspectContainer(c VarlinkCall, name_ string) error { + return c.ReplyMethodNotImplemented("io.projectatomic.podman.InspectContainer") +} + +func (s *VarlinkInterface) RenameContainer(c VarlinkCall) error { + return c.ReplyMethodNotImplemented("io.projectatomic.podman.RenameContainer") +} + +func (s *VarlinkInterface) BuildImage(c VarlinkCall) error { + return c.ReplyMethodNotImplemented("io.projectatomic.podman.BuildImage") } // Method call dispatcher func (s *VarlinkInterface) VarlinkDispatch(call varlink.Call, methodname string) error { switch methodname { - case "ListContainers": - return s.ioprojectatomicpodmanInterface.ListContainers(VarlinkCall{call}) - - case "GetContainer": - var in struct { - Name string `json:"name"` - } - err := call.GetParameters(&in) - if err != nil { - return call.ReplyInvalidParameter("parameters") - } - return s.ioprojectatomicpodmanInterface.GetContainer(VarlinkCall{call}, in.Name) - case "GetContainerStats": var in struct { Name string `json:"name"` @@ -2069,39 +2070,16 @@ func (s *VarlinkInterface) VarlinkDispatch(call varlink.Call, methodname string) } return s.ioprojectatomicpodmanInterface.GetContainerStats(VarlinkCall{call}, in.Name) - case "RenameContainer": - return s.ioprojectatomicpodmanInterface.RenameContainer(VarlinkCall{call}) - - case "UnpauseContainer": + case "StopContainer": var in struct { - Name string `json:"name"` + Name string `json:"name"` + Timeout int64 `json:"timeout"` } err := call.GetParameters(&in) if err != nil { return call.ReplyInvalidParameter("parameters") } - return s.ioprojectatomicpodmanInterface.UnpauseContainer(VarlinkCall{call}, in.Name) - - case "HistoryImage": - var in struct { - Name string `json:"name"` - } - err := call.GetParameters(&in) - if err != nil { - return call.ReplyInvalidParameter("parameters") - } - return s.ioprojectatomicpodmanInterface.HistoryImage(VarlinkCall{call}, in.Name) - - case "ExportContainer": - var in struct { - Name string `json:"name"` - Path string `json:"path"` - } - err := call.GetParameters(&in) - if err != nil { - return call.ReplyInvalidParameter("parameters") - } - return s.ioprojectatomicpodmanInterface.ExportContainer(VarlinkCall{call}, in.Name, in.Path) + return s.ioprojectatomicpodmanInterface.StopContainer(VarlinkCall{call}, in.Name, in.Timeout) case "RestartContainer": var in struct { @@ -2114,15 +2092,24 @@ func (s *VarlinkInterface) VarlinkDispatch(call varlink.Call, methodname string) } return s.ioprojectatomicpodmanInterface.RestartContainer(VarlinkCall{call}, in.Name, in.Timeout) - case "WaitContainer": + case "ImportImage": var in struct { - Name string `json:"name"` + Source string `json:"source"` + Reference string `json:"reference"` + Message string `json:"message"` + Changes []string `json:"changes"` } err := call.GetParameters(&in) if err != nil { return call.ReplyInvalidParameter("parameters") } - return s.ioprojectatomicpodmanInterface.WaitContainer(VarlinkCall{call}, in.Name) + return s.ioprojectatomicpodmanInterface.ImportImage(VarlinkCall{call}, in.Source, in.Reference, in.Message, []string(in.Changes)) + + case "ListContainers": + return s.ioprojectatomicpodmanInterface.ListContainers(VarlinkCall{call}) + + case "StartContainer": + return s.ioprojectatomicpodmanInterface.StartContainer(VarlinkCall{call}) case "RemoveContainer": var in struct { @@ -2135,8 +2122,47 @@ func (s *VarlinkInterface) VarlinkDispatch(call varlink.Call, methodname string) } return s.ioprojectatomicpodmanInterface.RemoveContainer(VarlinkCall{call}, in.Name, in.Force) - case "CreateImage": - return s.ioprojectatomicpodmanInterface.CreateImage(VarlinkCall{call}) + case "DeleteStoppedContainers": + return s.ioprojectatomicpodmanInterface.DeleteStoppedContainers(VarlinkCall{call}) + + case "InspectContainer": + var in struct { + Name string `json:"name"` + } + err := call.GetParameters(&in) + if err != nil { + return call.ReplyInvalidParameter("parameters") + } + return s.ioprojectatomicpodmanInterface.InspectContainer(VarlinkCall{call}, in.Name) + + case "RenameContainer": + return s.ioprojectatomicpodmanInterface.RenameContainer(VarlinkCall{call}) + + case "BuildImage": + return s.ioprojectatomicpodmanInterface.BuildImage(VarlinkCall{call}) + + case "PullImage": + var in struct { + Name string `json:"name"` + } + err := call.GetParameters(&in) + if err != nil { + return call.ReplyInvalidParameter("parameters") + } + return s.ioprojectatomicpodmanInterface.PullImage(VarlinkCall{call}, in.Name) + + case "Ping": + return s.ioprojectatomicpodmanInterface.Ping(VarlinkCall{call}) + + case "PauseContainer": + var in struct { + Name string `json:"name"` + } + err := call.GetParameters(&in) + if err != nil { + return call.ReplyInvalidParameter("parameters") + } + return s.ioprojectatomicpodmanInterface.PauseContainer(VarlinkCall{call}, in.Name) case "PushImage": var in struct { @@ -2150,17 +2176,17 @@ func (s *VarlinkInterface) VarlinkDispatch(call varlink.Call, methodname string) } return s.ioprojectatomicpodmanInterface.PushImage(VarlinkCall{call}, in.Name, in.Tag, in.Tlsverify) - case "Ping": - return s.ioprojectatomicpodmanInterface.Ping(VarlinkCall{call}) - - case "UpdateContainer": - return s.ioprojectatomicpodmanInterface.UpdateContainer(VarlinkCall{call}) - - case "AttachToContainer": - return s.ioprojectatomicpodmanInterface.AttachToContainer(VarlinkCall{call}) - - case "ListImages": - return s.ioprojectatomicpodmanInterface.ListImages(VarlinkCall{call}) + case "ExportImage": + var in struct { + Name string `json:"name"` + Destination string `json:"destination"` + Compress bool `json:"compress"` + } + err := call.GetParameters(&in) + if err != nil { + return call.ReplyInvalidParameter("parameters") + } + return s.ioprojectatomicpodmanInterface.ExportImage(VarlinkCall{call}, in.Name, in.Destination, in.Compress) case "InspectImage": var in struct { @@ -2172,18 +2198,19 @@ func (s *VarlinkInterface) VarlinkDispatch(call varlink.Call, methodname string) } return s.ioprojectatomicpodmanInterface.InspectImage(VarlinkCall{call}, in.Name) - case "PullImage": + case "RemoveImage": var in struct { - Name string `json:"name"` + Name string `json:"name"` + Force bool `json:"force"` } err := call.GetParameters(&in) if err != nil { return call.ReplyInvalidParameter("parameters") } - return s.ioprojectatomicpodmanInterface.PullImage(VarlinkCall{call}, in.Name) + return s.ioprojectatomicpodmanInterface.RemoveImage(VarlinkCall{call}, in.Name, in.Force) - case "CreateContainer": - return s.ioprojectatomicpodmanInterface.CreateContainer(VarlinkCall{call}) + case "GetVersion": + return s.ioprojectatomicpodmanInterface.GetVersion(VarlinkCall{call}) case "ResizeContainerTty": return s.ioprojectatomicpodmanInterface.ResizeContainerTty(VarlinkCall{call}) @@ -2199,44 +2226,28 @@ func (s *VarlinkInterface) VarlinkDispatch(call varlink.Call, methodname string) } return s.ioprojectatomicpodmanInterface.KillContainer(VarlinkCall{call}, in.Name, in.Signal) - case "ImportImage": + case "CreateImage": + return s.ioprojectatomicpodmanInterface.CreateImage(VarlinkCall{call}) + + case "GetContainerLogs": var in struct { - Source string `json:"source"` - Reference string `json:"reference"` - Message string `json:"message"` - Changes []string `json:"changes"` + Name string `json:"name"` } err := call.GetParameters(&in) if err != nil { return call.ReplyInvalidParameter("parameters") } - return s.ioprojectatomicpodmanInterface.ImportImage(VarlinkCall{call}, in.Source, in.Reference, in.Message, []string(in.Changes)) + return s.ioprojectatomicpodmanInterface.GetContainerLogs(VarlinkCall{call}, in.Name) - case "ExportImage": + case "HistoryImage": var in struct { - Name string `json:"name"` - Destination string `json:"destination"` - Compress bool `json:"compress"` + Name string `json:"name"` } err := call.GetParameters(&in) if err != nil { return call.ReplyInvalidParameter("parameters") } - return s.ioprojectatomicpodmanInterface.ExportImage(VarlinkCall{call}, in.Name, in.Destination, in.Compress) - - case "GetInfo": - return s.ioprojectatomicpodmanInterface.GetInfo(VarlinkCall{call}) - - case "ListContainerProcesses": - var in struct { - Name string `json:"name"` - Opts []string `json:"opts"` - } - err := call.GetParameters(&in) - if err != nil { - return call.ReplyInvalidParameter("parameters") - } - return s.ioprojectatomicpodmanInterface.ListContainerProcesses(VarlinkCall{call}, in.Name, []string(in.Opts)) + return s.ioprojectatomicpodmanInterface.HistoryImage(VarlinkCall{call}, in.Name) case "SearchImage": var in struct { @@ -2249,10 +2260,25 @@ func (s *VarlinkInterface) VarlinkDispatch(call varlink.Call, methodname string) } return s.ioprojectatomicpodmanInterface.SearchImage(VarlinkCall{call}, in.Name, in.Limit) - case "GetVersion": - return s.ioprojectatomicpodmanInterface.GetVersion(VarlinkCall{call}) + case "Commit": + var in struct { + Name string `json:"name"` + Image_name string `json:"image_name"` + Changes []string `json:"changes"` + Author string `json:"author"` + Message string `json:"message"` + Pause bool `json:"pause"` + } + err := call.GetParameters(&in) + if err != nil { + return call.ReplyInvalidParameter("parameters") + } + return s.ioprojectatomicpodmanInterface.Commit(VarlinkCall{call}, in.Name, in.Image_name, []string(in.Changes), in.Author, in.Message, in.Pause) - case "PauseContainer": + case "AttachToContainer": + return s.ioprojectatomicpodmanInterface.AttachToContainer(VarlinkCall{call}) + + case "WaitContainer": var in struct { Name string `json:"name"` } @@ -2260,10 +2286,40 @@ func (s *VarlinkInterface) VarlinkDispatch(call varlink.Call, methodname string) if err != nil { return call.ReplyInvalidParameter("parameters") } - return s.ioprojectatomicpodmanInterface.PauseContainer(VarlinkCall{call}, in.Name) + return s.ioprojectatomicpodmanInterface.WaitContainer(VarlinkCall{call}, in.Name) - case "BuildImage": - return s.ioprojectatomicpodmanInterface.BuildImage(VarlinkCall{call}) + case "DeleteUnusedImages": + return s.ioprojectatomicpodmanInterface.DeleteUnusedImages(VarlinkCall{call}) + + case "GetInfo": + return s.ioprojectatomicpodmanInterface.GetInfo(VarlinkCall{call}) + + case "GetContainer": + var in struct { + Name string `json:"name"` + } + err := call.GetParameters(&in) + if err != nil { + return call.ReplyInvalidParameter("parameters") + } + return s.ioprojectatomicpodmanInterface.GetContainer(VarlinkCall{call}, in.Name) + + case "CreateContainer": + return s.ioprojectatomicpodmanInterface.CreateContainer(VarlinkCall{call}) + + case "ListContainerProcesses": + var in struct { + Name string `json:"name"` + Opts []string `json:"opts"` + } + err := call.GetParameters(&in) + if err != nil { + return call.ReplyInvalidParameter("parameters") + } + return s.ioprojectatomicpodmanInterface.ListContainerProcesses(VarlinkCall{call}, in.Name, []string(in.Opts)) + + case "ListImages": + return s.ioprojectatomicpodmanInterface.ListImages(VarlinkCall{call}) case "TagImage": var in struct { @@ -2276,12 +2332,6 @@ func (s *VarlinkInterface) VarlinkDispatch(call varlink.Call, methodname string) } return s.ioprojectatomicpodmanInterface.TagImage(VarlinkCall{call}, in.Name, in.Tagged) - case "DeleteUnusedImages": - return s.ioprojectatomicpodmanInterface.DeleteUnusedImages(VarlinkCall{call}) - - case "CreateFromContainer": - return s.ioprojectatomicpodmanInterface.CreateFromContainer(VarlinkCall{call}) - case "ListContainerChanges": var in struct { Name string `json:"name"` @@ -2292,10 +2342,21 @@ func (s *VarlinkInterface) VarlinkDispatch(call varlink.Call, methodname string) } return s.ioprojectatomicpodmanInterface.ListContainerChanges(VarlinkCall{call}, in.Name) - case "StartContainer": - return s.ioprojectatomicpodmanInterface.StartContainer(VarlinkCall{call}) + case "ExportContainer": + var in struct { + Name string `json:"name"` + Path string `json:"path"` + } + err := call.GetParameters(&in) + if err != nil { + return call.ReplyInvalidParameter("parameters") + } + return s.ioprojectatomicpodmanInterface.ExportContainer(VarlinkCall{call}, in.Name, in.Path) - case "InspectContainer": + case "UpdateContainer": + return s.ioprojectatomicpodmanInterface.UpdateContainer(VarlinkCall{call}) + + case "UnpauseContainer": var in struct { Name string `json:"name"` } @@ -2303,42 +2364,7 @@ func (s *VarlinkInterface) VarlinkDispatch(call varlink.Call, methodname string) if err != nil { return call.ReplyInvalidParameter("parameters") } - return s.ioprojectatomicpodmanInterface.InspectContainer(VarlinkCall{call}, in.Name) - - case "GetContainerLogs": - var in struct { - Name string `json:"name"` - } - err := call.GetParameters(&in) - if err != nil { - return call.ReplyInvalidParameter("parameters") - } - return s.ioprojectatomicpodmanInterface.GetContainerLogs(VarlinkCall{call}, in.Name) - - case "StopContainer": - var in struct { - Name string `json:"name"` - Timeout int64 `json:"timeout"` - } - err := call.GetParameters(&in) - if err != nil { - return call.ReplyInvalidParameter("parameters") - } - return s.ioprojectatomicpodmanInterface.StopContainer(VarlinkCall{call}, in.Name, in.Timeout) - - case "DeleteStoppedContainers": - return s.ioprojectatomicpodmanInterface.DeleteStoppedContainers(VarlinkCall{call}) - - case "RemoveImage": - var in struct { - Name string `json:"name"` - Force bool `json:"force"` - } - err := call.GetParameters(&in) - if err != nil { - return call.ReplyInvalidParameter("parameters") - } - return s.ioprojectatomicpodmanInterface.RemoveImage(VarlinkCall{call}, in.Name, in.Force) + return s.ioprojectatomicpodmanInterface.UnpauseContainer(VarlinkCall{call}, in.Name) default: return call.ReplyMethodNotFound(methodname) @@ -2492,7 +2518,7 @@ type InfoHost ( uptime: string ) -# InfoGraphStatus describes the detailed status of the graph +# InfoGraphStatus describes the detailed status of the storage driver type InfoGraphStatus ( backing_filesystem: string, native_overlay_diff: string, @@ -2556,7 +2582,7 @@ method ListContainers() -> (containers: []ListContainerData) # See also [ListContainers](ListContainers) and [InspectContainer](InspectContainer). method GetContainer(name: string) -> (container: ListContainerData) -# This method has not been implemented yet. +# This method is not implemented yet. method CreateContainer() -> (notimplemented: NotImplemented) # InspectContainer data takes a name or ID of a container returns the inspection @@ -2745,8 +2771,14 @@ method SearchImage(name: string, limit: int) -> (images: []ImageSearch) # in a string array. method DeleteUnusedImages() -> (images: []string) -# This method is not implemented. -method CreateFromContainer() -> (notimplemented: NotImplemented) +# Commit, creates an image from an existing container. It requires the name or +# ID of the container as well as the resulting image name. Optionally, you can define an author and message +# to be added to the resulting image. You can also define changes to the resulting image for the following +# attributes: _CMD, ENTRYPOINT, ENV, EXPOSE, LABEL, STOPSIGNAL, USER, VOLUME, and WORKDIR_. To pause the +# container while it is being committed, pass a _true_ bool for the pause argument. If the container cannot +# be found by the ID or name provided, a (ContainerNotFound)[#ContainerNotFound] error will be returned; otherwise, +# the resulting image's ID will be returned as a string. +method Commit(name: string, image_name: string, changes: []string, author: string, message: string, pause: bool) -> (image: string) # ImportImage imports an image from a source (like tarball) into local storage. The image can have additional # descriptions added to it using the message and changes options. See also [ExportImage](ExportImage). diff --git a/libpod/container_commit.go b/libpod/container_commit.go index 190a3be973..d2f0d92092 100644 --- a/libpod/container_commit.go +++ b/libpod/container_commit.go @@ -2,7 +2,6 @@ package libpod import ( "context" - "fmt" "strings" is "github.com/containers/image/storage" @@ -145,6 +144,5 @@ func (c *Container) Commit(ctx context.Context, destImage string, options Contai if err != nil { return nil, err } - fmt.Fprintf(commitOptions.ReportWriter, importBuilder.Comment()) return c.runtime.imageRuntime.NewFromLocal(id) } diff --git a/pkg/varlinkapi/images.go b/pkg/varlinkapi/images.go index dc246fd7a2..045b0f6743 100644 --- a/pkg/varlinkapi/images.go +++ b/pkg/varlinkapi/images.go @@ -6,8 +6,10 @@ import ( "github.com/containers/image/docker" "github.com/opencontainers/image-spec/specs-go/v1" + "github.com/projectatomic/buildah" "github.com/projectatomic/libpod/cmd/podman/libpodruntime" ioprojectatomicpodman "github.com/projectatomic/libpod/cmd/podman/varlink" + "github.com/projectatomic/libpod/libpod" "github.com/projectatomic/libpod/libpod/image" sysreg "github.com/projectatomic/libpod/pkg/registries" "github.com/projectatomic/libpod/pkg/util" @@ -232,10 +234,36 @@ func (i *LibpodAPI) DeleteUnusedImages(call ioprojectatomicpodman.VarlinkCall) e return call.ReplyDeleteUnusedImages(deletedImages) } -// CreateFromContainer ... -// TODO This must wait until buildah is properly vendored into libpod -func (i *LibpodAPI) CreateFromContainer(call ioprojectatomicpodman.VarlinkCall) error { - return call.ReplyMethodNotImplemented("CreateFromContainer") +// Commit ... +func (i *LibpodAPI) Commit(call ioprojectatomicpodman.VarlinkCall, name, imageName string, changes []string, author, message string, pause bool) error { + runtime, err := libpodruntime.GetRuntime(i.Cli) + if err != nil { + return call.ReplyRuntimeError(err.Error()) + } + ctr, err := runtime.LookupContainer(name) + if err != nil { + return call.ReplyContainerNotFound(name) + } + sc := image.GetSystemContext(runtime.GetConfig().SignaturePolicyPath, "", false) + coptions := buildah.CommitOptions{ + SignaturePolicyPath: runtime.GetConfig().SignaturePolicyPath, + ReportWriter: nil, + SystemContext: sc, + PreferredManifestType: buildah.OCIv1ImageManifest, + } + options := libpod.ContainerCommitOptions{ + CommitOptions: coptions, + Pause: pause, + Message: message, + Changes: changes, + Author: author, + } + + newImage, err := ctr.Commit(getContext(), imageName, options) + if err != nil { + return call.ReplyErrorOccurred(err.Error()) + } + return call.ReplyCommit(newImage.ID()) } // ImportImage imports an image from a tarball to the image store