pulumi/sdk/go/common/resource/plugin
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
..
analyzer.go feat(engine): Adds structured alias support to the engine 2022-10-11 17:56:32 -04:00
analyzer_plugin.go Fix panic when analyzer plugin is not found. (#13767) 2023-08-25 19:00:17 +00:00
check.go [breaking] Changing the version of go.mod in sdk / pkg to be v3 2021-04-14 19:32:18 +01:00
config_source.go [breaking] Changing the version of go.mod in sdk / pkg to be v3 2021-04-14 19:32:18 +01:00
context.go [engine] Add support for source positions 2023-07-10 14:35:40 -07:00
context_test.go Fix data race in plugin.Context 2023-03-31 07:15:11 -07:00
converter.go Pass loader to convert plugins 2023-08-09 22:02:57 +01:00
converter_plugin.go Pass loader to convert plugins 2023-08-09 22:02:57 +01:00
converter_plugin_test.go Pass loader to convert plugins 2023-08-09 22:02:57 +01:00
converter_server.go Pass loader to convert plugins 2023-08-09 22:02:57 +01:00
converter_server_test.go Pass loader to convert plugins 2023-08-09 22:02:57 +01:00
diagnostic.go Allow converter plugins to return diagnostics 2023-06-05 17:38:59 +01:00
diagnostic_test.go Allow converter plugins to return diagnostics 2023-06-05 17:38:59 +01:00
doc.go Provider implementer's guide draft (#6322) 2021-04-13 14:11:02 -07:00
host.go Lock access to the plugin loading channels 2023-08-10 23:40:23 +01:00
host_server.go all: Reformat with gofumpt 2023-03-03 09:00:24 -08:00
host_test.go Lock access to the plugin loading channels 2023-08-10 23:40:23 +01:00
langruntime.go Add hidden sdk-pack command 2023-08-08 17:53:04 +01:00
langruntime_plugin.go Allow language plugins to return plugin checksums (#13776) 2023-08-25 15:26:25 +00:00
plugin.go resource/plugin: Shut down plugins gracefully (#13795) 2023-08-29 12:02:54 +00:00
plugin_test.go resource/plugin: Shut down plugins gracefully (#13795) 2023-08-29 12:02:54 +00:00
provider.go Send old inputs to diff and update 2023-06-21 21:04:50 +01:00
provider_plugin.go Warn about ambient plugins loaded from $PATH 2023-08-08 13:11:34 +01:00
provider_plugin_test.go sdk/plugin: Add more resource options to ConstructOptions 2023-04-21 10:57:21 -07:00
provider_server.go Send old inputs to diff and update 2023-06-21 21:04:50 +01:00
provider_server_test.go Lint 2023-03-10 12:29:07 -05:00
provider_test.go Add forward compatible UnimplementedProvider for bridge 2022-12-09 18:44:28 -08:00
provider_unimplemented.go Send old inputs to diff and update 2023-06-21 21:04:50 +01:00
rpc.go all: Reformat with gofumpt 2023-03-03 09:00:24 -08:00
rpc_rapid_test.go deps: Upgrade to pgregory.net/rapid v0.5 2023-02-16 12:04:07 -08:00
rpc_test.go all: Reformat with gofumpt 2023-03-03 09:00:24 -08:00
server.go Add mapping service to converter 2023-03-24 17:09:17 +00:00