summaryrefslogtreecommitdiff
path: root/pkg/domain/entities
diff options
context:
space:
mode:
authorBrent Baude <bbaude@redhat.com>2020-03-19 16:50:15 -0500
committerBrent Baude <bbaude@redhat.com>2020-03-20 12:54:45 -0500
commit87293028e61d0c88c258ed9f4a82c4be7f0bc896 (patch)
treecd3c6f35eed940e41afed71e7f60f7a8abac1612 /pkg/domain/entities
parentccc30c606e843d5c98e2c62a3b393a61e60976b2 (diff)
downloadpodman-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.go14
-rw-r--r--pkg/domain/entities/engine.go9
-rw-r--r--pkg/domain/entities/engine_container.go14
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)
}