diff options
author | OpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com> | 2020-09-22 16:07:39 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-09-22 16:07:39 +0000 |
commit | 23cb2009196cdf604ad9f0a77ff7544d7a25b5e0 (patch) | |
tree | e722f92ab91525237d7114b30f515f883aff765c | |
parent | 34b87961afb34f53fbdcce1db47bbe9399dd3a2f (diff) | |
parent | fed1ecf470f85d68527498b029252d26c43f50ef (diff) | |
download | podman-23cb2009196cdf604ad9f0a77ff7544d7a25b5e0.tar.gz podman-23cb2009196cdf604ad9f0a77ff7544d7a25b5e0.tar.bz2 podman-23cb2009196cdf604ad9f0a77ff7544d7a25b5e0.zip |
Merge pull request #7724 from vrothberg/hooks
pkg/hooks: support all hooks
-rw-r--r-- | pkg/hooks/1.0.0/hook.go | 9 | ||||
-rw-r--r-- | pkg/hooks/hooks.go | 6 |
2 files changed, 14 insertions, 1 deletions
diff --git a/pkg/hooks/1.0.0/hook.go b/pkg/hooks/1.0.0/hook.go index 77fbab5aa..244e8800f 100644 --- a/pkg/hooks/1.0.0/hook.go +++ b/pkg/hooks/1.0.0/hook.go @@ -67,7 +67,14 @@ func (hook *Hook) Validate(extensionStages []string) (err error) { return errors.New("missing required property: stages") } - validStages := map[string]bool{"prestart": true, "poststart": true, "poststop": true} + validStages := map[string]bool{ + "createContainer": true, + "createRuntime": true, + "prestart": true, + "poststart": true, + "poststop": true, + "startContainer": true, + } for _, stage := range extensionStages { validStages[stage] = true } diff --git a/pkg/hooks/hooks.go b/pkg/hooks/hooks.go index 2a12eceac..6257529ab 100644 --- a/pkg/hooks/hooks.go +++ b/pkg/hooks/hooks.go @@ -120,12 +120,18 @@ func (m *Manager) Hooks(config *rspec.Spec, annotations map[string]string, hasBi extensionStageHooks[stage] = append(extensionStageHooks[stage], namedHook.hook.Hook) } else { switch stage { + case "createContainer": + config.Hooks.CreateContainer = append(config.Hooks.CreateContainer, namedHook.hook.Hook) + case "createRuntime": + config.Hooks.CreateRuntime = append(config.Hooks.CreateRuntime, namedHook.hook.Hook) case "prestart": config.Hooks.Prestart = append(config.Hooks.Prestart, namedHook.hook.Hook) case "poststart": config.Hooks.Poststart = append(config.Hooks.Poststart, namedHook.hook.Hook) case "poststop": config.Hooks.Poststop = append(config.Hooks.Poststop, namedHook.hook.Hook) + case "startContainer": + config.Hooks.StartContainer = append(config.Hooks.StartContainer, namedHook.hook.Hook) default: return extensionStageHooks, fmt.Errorf("hook %q: unknown stage %q", namedHook.name, stage) } |