pulumi/pkg
Fraser Waters a92101cd49 Add GetState to resource monitor
This new method is used to return the state of the resource monitor for
a deployment directly to a client.

This helps with three major areas:
1) `Construct` and `Call` no longer need to be kept up to date with any new
   features added to `Run`. All they need is the resource monitor target
   and can use `GetState` to fetch all other information.
2) We no longer need to find a way to pass all the information from
   `Run` from the runtime host to the runtime SDKs. Instead all we need
   to pass is the (again) the resource monitor target, and on startup
   the SDK can fetch the rest of the information over gRPC. In fact we
   don't even need to add new information to `Run`, as the language
   runtime host can also just use `GetState` to fetch the latest
   information.
3) Features are now a safe enumeration lookup rather than a set of strings that
   could be typo'd. Further you don't need to make multiple roundtrips to see all
   features supported, the entire set is returned at once.

A few things need pointing out about this change.

Firstly SDKs that use this _also_ need to have a fallback to using the
old envvar based approch because they might be running against an old
engine version.

Secondly this PR doesn't update any of the SDKs to use this. The most
obvious candidate to update first is YAML as that doesn't actually have
an SDK, just the host and the host _doesn't_ need to be backward
compatible because we always tie host and engine versions together in a
single release.
2024-01-02 12:51:45 +00:00
..
authhelpers Add tests for gcpauth pkg (#13926) 2023-09-13 11:27:03 +00:00
backend Fix data rate in backend/display/tree_test.go (#15006) 2023-12-27 20:16:51 +00:00
cmd/pulumi fix `--import-file` failing when resources share the same name. (#15008) 2023-12-28 15:33:59 +00:00
codegen [program-gen/pcl] Fixes type-annotating nested resource properties when these have quoted keys (#15001) 2023-12-27 12:42:52 +00:00
display Move sdk/go/common/display to /pkg/display (#13954) 2023-09-18 11:01:28 +00:00
engine Add GetState to resource monitor 2024-01-02 12:51:45 +00:00
graph Use slice.Prealloc instead of make([]T, 0, ...) 2023-06-29 11:27:50 +01:00
importer Enable perfsprint linter (#14813) 2023-12-12 12:19:42 +00:00
operations Allow anything in resource names (#14107) 2023-11-20 08:59:00 +00:00
resource Add GetState to resource monitor 2024-01-02 12:51:45 +00:00
secrets Clean up uses of .Error() (#14965) 2023-12-20 15:54:06 +00:00
testing/integration Clean up uses of .Error() (#14965) 2023-12-20 15:54:06 +00:00
util Clean up uses of .Error() (#14965) 2023-12-20 15:54:06 +00:00
version duplicate version to ensure linking is properly handled 2020-03-19 12:49:34 -07:00
workspace Clean up uses of .Error() (#14965) 2023-12-20 15:54:06 +00:00
README.md export codegen tests for internal use (#8928) 2022-02-07 12:10:04 +01:00
go.mod Upgrade pulumi-java and pulumi-yaml (#15007) 2023-12-27 20:51:53 +00:00
go.sum Upgrade pulumi-java and pulumi-yaml (#15007) 2023-12-27 20:51:53 +00:00

README.md

pulumi/pkg

While pulumi/sdk maintains strict backwards compatibility guarantees, code under pkg/ is handled more informally: while breaking changes are still discouraged they may happen when they make sense.