diff options
author | Brent Baude <bbaude@redhat.com> | 2020-03-19 16:50:15 -0500 |
---|---|---|
committer | Brent Baude <bbaude@redhat.com> | 2020-03-20 12:54:45 -0500 |
commit | 87293028e61d0c88c258ed9f4a82c4be7f0bc896 (patch) | |
tree | cd3c6f35eed940e41afed71e7f60f7a8abac1612 /pkg/domain/entities | |
parent | ccc30c606e843d5c98e2c62a3b393a61e60976b2 (diff) | |
download | podman-87293028e61d0c88c258ed9f4a82c4be7f0bc896.tar.gz podman-87293028e61d0c88c258ed9f4a82c4be7f0bc896.tar.bz2 podman-87293028e61d0c88c258ed9f4a82c4be7f0bc896.zip |
podmanv2 container exists|wait
enable container exists and wait for podmanv2
Signed-off-by: Brent Baude <bbaude@redhat.com>
Diffstat (limited to 'pkg/domain/entities')
-rw-r--r-- | pkg/domain/entities/containers.go | 14 | ||||
-rw-r--r-- | pkg/domain/entities/engine.go | 9 | ||||
-rw-r--r-- | pkg/domain/entities/engine_container.go | 14 |
3 files changed, 20 insertions, 17 deletions
diff --git a/pkg/domain/entities/containers.go b/pkg/domain/entities/containers.go index 1899b98f7..e688e4fd3 100644 --- a/pkg/domain/entities/containers.go +++ b/pkg/domain/entities/containers.go @@ -1 +1,15 @@ package entities + +import "time" + +type WaitOptions struct { + Condition string + Interval time.Duration + Latest bool +} + +type WaitReport struct { + Id string + Error error + ExitCode int32 +} diff --git a/pkg/domain/entities/engine.go b/pkg/domain/entities/engine.go index a1096f1f1..08ef1df92 100644 --- a/pkg/domain/entities/engine.go +++ b/pkg/domain/entities/engine.go @@ -1,7 +1,6 @@ package entities import ( - "net/url" "os/user" "path/filepath" @@ -20,11 +19,13 @@ func (m EngineMode) String() string { return string(m) } +// FIXME: merge EngineOptions and EngineFlags type EngineOptions struct { - Uri *url.URL + Uri string Identities []string - FlagSet pflag.FlagSet + FlagSet *pflag.FlagSet Flags EngineFlags + EngineMode EngineMode } type EngineFlags struct { @@ -58,8 +59,6 @@ type EngineFlags struct { Port int IdentityFile string IgnoreHosts bool - - EngineMode EngineMode } func NewEngineOptions() (EngineFlags, error) { diff --git a/pkg/domain/entities/engine_container.go b/pkg/domain/entities/engine_container.go index d08f37d44..53f8f88f5 100644 --- a/pkg/domain/entities/engine_container.go +++ b/pkg/domain/entities/engine_container.go @@ -5,22 +5,12 @@ import ( ) type ContainerEngine interface { - ContainerRuntime - PodRuntime - VolumeRuntime -} - -type ContainerRuntime interface { ContainerDelete(ctx context.Context, opts ContainerDeleteOptions) (*ContainerDeleteReport, error) ContainerPrune(ctx context.Context) (*ContainerPruneReport, error) -} - -type PodRuntime interface { + ContainerExists(ctx context.Context, nameOrId string) (bool, error) + ContainerWait(ctx context.Context, namesOrIds []string, options WaitOptions) ([]WaitReport, error) PodDelete(ctx context.Context, opts PodPruneOptions) (*PodDeleteReport, error) PodPrune(ctx context.Context) (*PodPruneReport, error) -} - -type VolumeRuntime interface { VolumeDelete(ctx context.Context, opts VolumeDeleteOptions) (*VolumeDeleteReport, error) VolumePrune(ctx context.Context) (*VolumePruneReport, error) } |