Adding upstream version 1.34.4.
Signed-off-by: Daniel Baumann <daniel@debian.org>
This commit is contained in:
parent
e393c3af3f
commit
4978089aab
4963 changed files with 677545 additions and 0 deletions
27
internal/process/process_posix.go
Normal file
27
internal/process/process_posix.go
Normal file
|
@ -0,0 +1,27 @@
|
|||
//go:build !windows
|
||||
|
||||
package process
|
||||
|
||||
import (
|
||||
"context"
|
||||
"os/exec"
|
||||
"syscall"
|
||||
"time"
|
||||
)
|
||||
|
||||
func (p *Process) gracefulStop(ctx context.Context, cmd *exec.Cmd, timeout time.Duration) {
|
||||
select {
|
||||
case <-time.After(timeout):
|
||||
if err := cmd.Process.Signal(syscall.SIGTERM); err != nil {
|
||||
p.Log.Errorf("Error after sending SIGTERM signal to process: %v", err)
|
||||
}
|
||||
case <-ctx.Done():
|
||||
}
|
||||
select {
|
||||
case <-time.After(timeout):
|
||||
if err := cmd.Process.Kill(); err != nil {
|
||||
p.Log.Errorf("Error after killing process: %v", err)
|
||||
}
|
||||
case <-ctx.Done():
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue