pulumi/sdk/go/common
Abhinav Gupta 25901d95c4
resource/plugin: Shut down plugins gracefully (#13795)
Uses the new TerminateProcessGroup functionality introduced in #13792
to shut down plugins gracefully.

Graceful shutdown takes the following form:

- Send a termination signal (SIGINT or CTRL_BREAK_EVENT)
- Wait up to 1 second for the plugin to exit
- Kill it with SIGKILL

Note that TerminateProcessGroup kills the entire group
so we don't need a separate KillChildren and cmd.Process.Kill().

This change also deprecates cmdutil.KillChildren
since we shouldn't really be using SIGKILL as a first resort anyway.

Note that this does not modify the behavior of individual plugins.
Those will exit as usual but with a SIGINT instead of SIGKILL
terminating them.

Resolves #9780
2023-08-29 12:02:54 +00:00
..
apitype Adds two new CLI features - search and AI search (#13611) 2023-08-21 15:06:46 +00:00
constant Send update metadata about update plans 2022-10-12 22:55:59 +01:00
diag [sdk] Update uniseg 2023-05-25 22:24:13 -07:00
display Moving previewDigest to sdk/go/common/display, and exporting it. (#9886) 2022-06-27 09:08:06 -05:00
encoding all: Reformat with gofumpt 2023-03-03 09:00:24 -08:00
env [cli/new] Support SSH-style Git URLs 2023-08-02 09:29:34 -07:00
resource resource/plugin: Shut down plugins gracefully (#13795) 2023-08-29 12:02:54 +00:00
slice Use slice.Prealloc instead of make([]T, 0, ...) 2023-06-29 11:27:50 +01:00
testing address comments: use os.UserHomeDir() and disable parallel tests 2023-06-26 13:53:58 +02:00
tokens sdk/go: Add tokens.ValidateProjectName 2023-06-13 10:08:31 -07:00
tools all: Reformat with gofumpt 2023-03-03 09:00:24 -08:00
util resource/plugin: Shut down plugins gracefully (#13795) 2023-08-29 12:02:54 +00:00
version move pkg/version -> sdk/go/common/version 2020-03-18 15:25:25 -07:00
workspace Allow language plugins to return plugin checksums (#13776) 2023-08-25 15:26:25 +00:00