add support to kill container process by pid
This adds support for signalling a container process by pid. Signed-off-by: Evan Hazlett <ejhazlett@gmail.com> make Ps more extensible Signed-off-by: Evan Hazlett <ejhazlett@gmail.com> ps: windows support Signed-off-by: Evan Hazlett <ejhazlett@gmail.com>
This commit is contained in:
@@ -120,7 +120,7 @@ func (c *container) State(ctx context.Context) (plugin.State, error) {
|
||||
return c, nil
|
||||
}
|
||||
|
||||
func (c *container) Kill(ctx context.Context, signal uint32, all bool) error {
|
||||
func (c *container) Kill(ctx context.Context, signal uint32, pid uint32, all bool) error {
|
||||
if winsys.Signal(signal) == winsys.SIGKILL {
|
||||
return c.ctr.Kill(ctx)
|
||||
}
|
||||
@@ -174,6 +174,16 @@ func (c *container) Pid() uint32 {
|
||||
return c.ctr.Pid()
|
||||
}
|
||||
|
||||
func (c *container) Ps(ctx context.Context) ([]uint32, error) {
|
||||
// TODO (ehazlett): support finding all processes in windows container
|
||||
p, err := c.ctr.ProcessList()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
log.G(ctx).Debug(p)
|
||||
return []uint32{c.ctr.Pid()}, nil
|
||||
}
|
||||
|
||||
func (c *container) setStatus(status plugin.Status) {
|
||||
c.Lock()
|
||||
c.status = status
|
||||
|
Reference in New Issue
Block a user