Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
61 changes: 40 additions & 21 deletions API.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,9 +43,13 @@ in the [API.md](https://github.com/containers/libpod/blob/master/API.md) file in

[func GetContainerStats(name: string) ContainerStats](#GetContainerStats)

[func GetContainerStatsWithHistory(previousStats: ContainerStats) ContainerStats](#GetContainerStatsWithHistory)

[func GetContainersByContext(all: bool, latest: bool, args: []string) []string](#GetContainersByContext)

[func GetEvents(options: EventInput) Event](#GetEvents)
[func GetContainersLogs(names: []string, follow: bool, latest: bool, since: string, tail: int, timestamps: bool) LogLine](#GetContainersLogs)

[func GetEvents(filter: []string, since: string, until: string) Event](#GetEvents)

[func GetImage(id: string) Image](#GetImage)

Expand Down Expand Up @@ -133,6 +137,8 @@ in the [API.md](https://github.com/containers/libpod/blob/master/API.md) file in

[func TagImage(name: string, tagged: string) string](#TagImage)

[func TopPod(pod: string, latest: bool, descriptors: []string) []string](#TopPod)

[func UnmountContainer(name: string, force: bool) ](#UnmountContainer)

[func UnpauseContainer(name: string) string](#UnpauseContainer)
Expand Down Expand Up @@ -169,8 +175,6 @@ in the [API.md](https://github.com/containers/libpod/blob/master/API.md) file in

[type Event](#Event)

[type EventInput](#EventInput)

[type IDMap](#IDMap)

[type IDMappingOptions](#IDMappingOptions)
Expand Down Expand Up @@ -199,6 +203,8 @@ in the [API.md](https://github.com/containers/libpod/blob/master/API.md) file in

[type ListPodData](#ListPodData)

[type LogLine](#LogLine)

[type MoreResponse](#MoreResponse)

[type NotImplemented](#NotImplemented)
Expand Down Expand Up @@ -237,8 +243,6 @@ in the [API.md](https://github.com/containers/libpod/blob/master/API.md) file in

[error RuntimeError](#RuntimeError)

[error StreamEnded](#StreamEnded)

[error VolumeNotFound](#VolumeNotFound)

[error WantsMoreRequired](#WantsMoreRequired)
Expand Down Expand Up @@ -472,17 +476,28 @@ $ varlink call -m unix:/run/podman/io.podman/io.podman.GetContainerStats '{"name
}
}
~~~
### <a name="GetContainerStatsWithHistory"></a>func GetContainerStatsWithHistory
<div style="background-color: #E8E8E8; padding: 15px; margin: 10px; border-radius: 10px;">

method GetContainerStatsWithHistory(previousStats: [ContainerStats](#ContainerStats)) [ContainerStats](#ContainerStats)</div>
GetContainerStatsWithHistory takes a previous set of container statistics and uses libpod functions
to calculate the containers statistics based on current and previous measurements.
### <a name="GetContainersByContext"></a>func GetContainersByContext
<div style="background-color: #E8E8E8; padding: 15px; margin: 10px; border-radius: 10px;">

method GetContainersByContext(all: [bool](https://godoc.org/builtin#bool), latest: [bool](https://godoc.org/builtin#bool), args: [[]string](#[]string)) [[]string](#[]string)</div>
GetContainersByContext allows you to get a list of container ids depending on all, latest, or a list of
container names. The definition of latest container means the latest by creation date. In a multi-
user environment, results might differ from what you expect.
### <a name="GetContainersLogs"></a>func GetContainersLogs
<div style="background-color: #E8E8E8; padding: 15px; margin: 10px; border-radius: 10px;">

method GetContainersLogs(names: [[]string](#[]string), follow: [bool](https://godoc.org/builtin#bool), latest: [bool](https://godoc.org/builtin#bool), since: [string](https://godoc.org/builtin#string), tail: [int](https://godoc.org/builtin#int), timestamps: [bool](https://godoc.org/builtin#bool)) [LogLine](#LogLine)</div>

### <a name="GetEvents"></a>func GetEvents
<div style="background-color: #E8E8E8; padding: 15px; margin: 10px; border-radius: 10px;">

method GetEvents(options: [EventInput](#EventInput)) [Event](#Event)</div>
method GetEvents(filter: [[]string](#[]string), since: [string](https://godoc.org/builtin#string), until: [string](https://godoc.org/builtin#string)) [Event](#Event)</div>
GetEvents returns known libpod events filtered by the options provided.
### <a name="GetImage"></a>func GetImage
<div style="background-color: #E8E8E8; padding: 15px; margin: 10px; border-radius: 10px;">
Expand Down Expand Up @@ -714,7 +729,7 @@ See also [GetContainer](#GetContainer).

method ListImages() [Image](#Image)</div>
ListImages returns information about the images that are currently in storage.
See also [InspectImage](InspectImage).
See also [InspectImage](#InspectImage).
### <a name="ListPods"></a>func ListPods
<div style="background-color: #E8E8E8; padding: 15px; margin: 10px; border-radius: 10px;">

Expand Down Expand Up @@ -976,6 +991,11 @@ $ varlink call -m unix:/run/podman/io.podman/io.podman.StopPod '{"name": "135d71
method TagImage(name: [string](https://godoc.org/builtin#string), tagged: [string](https://godoc.org/builtin#string)) [string](https://godoc.org/builtin#string)</div>
TagImage takes the name or ID of an image in local storage as well as the desired tag name. If the image cannot
be found, an [ImageNotFound](#ImageNotFound) error will be returned; otherwise, the ID of the image is returned on success.
### <a name="TopPod"></a>func TopPod
<div style="background-color: #E8E8E8; padding: 15px; margin: 10px; border-radius: 10px;">

method TopPod(pod: [string](https://godoc.org/builtin#string), latest: [bool](https://godoc.org/builtin#bool), descriptors: [[]string](#[]string)) [[]string](#[]string)</div>

### <a name="UnmountContainer"></a>func UnmountContainer
<div style="background-color: #E8E8E8; padding: 15px; margin: 10px; border-radius: 10px;">

Expand Down Expand Up @@ -1426,17 +1446,6 @@ status [string](https://godoc.org/builtin#string)
time [string](https://godoc.org/builtin#string)

type [string](https://godoc.org/builtin#string)
### <a name="EventInput"></a>type EventInput

EventInput describes the input to obtain libpod events

filter [[]string](#[]string)

since [string](https://godoc.org/builtin#string)

stream [bool](https://godoc.org/builtin#bool)

until [string](https://godoc.org/builtin#string)
### <a name="IDMap"></a>type IDMap

IDMap is used to describe user name spaces during container creation
Expand Down Expand Up @@ -1636,6 +1645,19 @@ labels [map[string]](#map[string])
numberofcontainers [string](https://godoc.org/builtin#string)

containersinfo [ListPodContainerInfo](#ListPodContainerInfo)
### <a name="LogLine"></a>type LogLine



device [string](https://godoc.org/builtin#string)

parseLogType [string](https://godoc.org/builtin#string)

time [string](https://godoc.org/builtin#string)

msg [string](https://godoc.org/builtin#string)

cid [string](https://godoc.org/builtin#string)
### <a name="MoreResponse"></a>type MoreResponse

MoreResponse is a struct for when responses from varlink requires longer output
Expand Down Expand Up @@ -1793,9 +1815,6 @@ PodNotFound means the pod could not be found by the provided name or ID in local
### <a name="RuntimeError"></a>type RuntimeError

RuntimeErrors generally means a runtime could not be found or gotten.
### <a name="StreamEnded"></a>type StreamEnded

The Podman endpoint has closed because the stream ended.
### <a name="VolumeNotFound"></a>type VolumeNotFound

VolumeNotFound means the volume could not be found by the name or ID in local storage.
Expand Down
2 changes: 1 addition & 1 deletion cmd/podman/varlink/io.podman.varlink
Original file line number Diff line number Diff line change
Expand Up @@ -1151,7 +1151,7 @@ method GetPodsByContext(all: bool, latest: bool, args: []string) -> (pods: []str
method LoadImage(name: string, inputFile: string, quiet: bool, deleteFile: bool) -> (reply: MoreResponse)

# GetEvents returns known libpod events filtered by the options provided.
method GetEvents(filter: []string, since: string, stream: bool, until: string) -> (events: Event)
method GetEvents(filter: []string, since: string, until: string) -> (events: Event)

# ImageNotFound means the image could not be found by the provided name or ID in local storage.
error ImageNotFound (id: string, reason: string)
Expand Down
2 changes: 2 additions & 0 deletions libpod/events/events.go
Original file line number Diff line number Diff line change
Expand Up @@ -219,6 +219,8 @@ func StringToStatus(name string) (Status, error) {
return Create, nil
case Exec.String():
return Exec, nil
case Exited.String():
return Exited, nil
case Export.String():
return Export, nil
case History.String():
Expand Down
6 changes: 5 additions & 1 deletion pkg/adapter/runtime_remote.go
Original file line number Diff line number Diff line change
Expand Up @@ -763,7 +763,11 @@ func (r *LocalRuntime) JoinOrCreateRootlessPod(pod *Pod) (bool, int, error) {

// Events monitors libpod/podman events over a varlink connection
func (r *LocalRuntime) Events(c *cliconfig.EventValues) error {
reply, err := iopodman.GetEvents().Send(r.Conn, uint64(varlink.More), c.Filter, c.Since, c.Stream, c.Until)
var more uint64
if c.Stream {
more = uint64(varlink.More)
}
reply, err := iopodman.GetEvents().Send(r.Conn, more, c.Filter, c.Since, c.Until)
if err != nil {
return errors.Wrapf(err, "unable to obtain events")
}
Expand Down
6 changes: 4 additions & 2 deletions pkg/varlinkapi/events.go
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,15 @@ import (
)

// GetEvents is a remote endpoint to get events from the event log
func (i *LibpodAPI) GetEvents(call iopodman.VarlinkCall, filter []string, since string, stream bool, until string) error {
func (i *LibpodAPI) GetEvents(call iopodman.VarlinkCall, filter []string, since string, until string) error {
var (
fromStart bool
eventsError error
event *events.Event
stream bool
)
if call.WantsMore() {
stream = true
call.Continues = true
}
filters, err := shared.GenerateEventOptions(filter, since, until)
Expand Down Expand Up @@ -52,5 +54,5 @@ func (i *LibpodAPI) GetEvents(call iopodman.VarlinkCall, filter []string, since
break
}
}
return call.ReplyGetEvents(iopodman.Event{})
return nil
}