summaryrefslogtreecommitdiffhomepage
path: root/runsc/cmd/kill.go
diff options
context:
space:
mode:
Diffstat (limited to 'runsc/cmd/kill.go')
-rw-r--r--runsc/cmd/kill.go15
1 files changed, 7 insertions, 8 deletions
diff --git a/runsc/cmd/kill.go b/runsc/cmd/kill.go
index 6fa5674f1..af709bc71 100644
--- a/runsc/cmd/kill.go
+++ b/runsc/cmd/kill.go
@@ -29,7 +29,9 @@ import (
)
// Kill implements subcommands.Command for the "kill" command.
-type Kill struct{}
+type Kill struct {
+ all bool
+}
// Name implements subcommands.Command.Name.
func (*Kill) Name() string {
@@ -47,15 +49,12 @@ func (*Kill) Usage() string {
}
// SetFlags implements subcommands.Command.SetFlags.
-func (*Kill) SetFlags(f *flag.FlagSet) {
- // TODO: Implement this flag. It is defined here just to
- // prevent runsc from crashing if it is passed.
- var all bool
- f.BoolVar(&all, "all", false, "send the specified signal to all processes inside the container")
+func (k *Kill) SetFlags(f *flag.FlagSet) {
+ f.BoolVar(&k.all, "all", false, "send the specified signal to all processes inside the container")
}
// Execute implements subcommands.Command.Execute.
-func (*Kill) Execute(_ context.Context, f *flag.FlagSet, args ...interface{}) subcommands.ExitStatus {
+func (k *Kill) Execute(_ context.Context, f *flag.FlagSet, args ...interface{}) subcommands.ExitStatus {
if f.NArg() == 0 || f.NArg() > 2 {
f.Usage()
return subcommands.ExitUsageError
@@ -83,7 +82,7 @@ func (*Kill) Execute(_ context.Context, f *flag.FlagSet, args ...interface{}) su
}
// TODO: Distinguish between already-exited containers and
// genuine errors.
- if err := c.Signal(sig); err != nil {
+ if err := c.Signal(sig, k.all); err != nil {
Fatalf("%v", err)
}
return subcommands.ExitSuccess