Add --all flag to kill

This allows a user to send a signal to all the processes in the
container within a single atomic action to avoid new processes being
forked off before the signal can be sent.

This is basically taking functionality that we already use being
`delete` and exposing it ok the `kill` command by adding a flag.

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
This commit is contained in:
Michael Crosby
2016-11-07 15:22:27 -08:00
parent 99a60237cd
commit e58671e530
9 changed files with 28 additions and 11 deletions
+7 -1
View File
@@ -62,6 +62,12 @@ For example, if the container id is "ubuntu01" the following will send a "KILL"
signal to the init process of the "ubuntu01" container:
# runc kill ubuntu01 KILL`,
Flags: []cli.Flag{
cli.BoolFlag{
Name: "all, a",
Usage: "send the specified signal to all processes inside the container",
},
},
Action: func(context *cli.Context) error {
container, err := getContainer(context)
if err != nil {
@@ -77,7 +83,7 @@ signal to the init process of the "ubuntu01" container:
if err != nil {
return err
}
if err := container.Signal(signal); err != nil {
if err := container.Signal(signal, context.Bool("all")); err != nil {
return err
}
return nil