Add support for oci-hooks to libkpod

Add new directory /etc/crio/hooks.d, where packagers can drop a json config
file to specify a hook.

The json must specify a valid executable to run.
The json must also specify which stage(s) to run the hook:
prestart, poststart, poststop
The json must specify under which criteria the hook should be launched
If the container HasBindMounts
If the container cmd matches a list of regular expressions
If the containers annotations matches a list of regular expressions.
If any of these match the the hook will be launched.

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
This commit is contained in:
Daniel J Walsh 2017-08-12 10:29:22 +00:00
parent 8538c4067a
commit 139d0841e8
13 changed files with 365 additions and 1 deletions

View file

@ -0,0 +1,5 @@
{
"cmd" : [".*"],
"hook" : "HOOKSDIR/checkhook.sh",
"stage" : [ "prestart" ]
}

4
test/hooks/checkhook.sh Executable file
View file

@ -0,0 +1,4 @@
#!/bin/sh
echo $@ >> /run/hookscheck
read line
echo $line >> /run/hookscheck