pulumi/pkg/resource/deploy/providers
Fraser Waters c9c30f0939
Ensure internal provider state doesn't clash with user config (#16837)
Provider internal state is now separated from provider user config. This
allows providers to use a config key like "pluginDownloadURL" which
previously would have conflicted with the engines internal state. It
also allows the engine to add new internal state fields without concern
for clashing with existing or future provider config keys.

"version" is maintained as a root level key because providers already
look at this field, and we use it in conformance tests. However it's
been fixed to be the package version, not the plugin version. That's the
same for normal providers, but for a parameterised provider it will be
the version of the parameterised package, not the base plugin version.
As part of this I've made schema more strict that a provider can't
define its own version field. This would have clashed with the use of
version to set the plugin version to download, and is better set by
users by using the version resource option.

Fixes https://github.com/pulumi/pulumi/issues/16757.

---------

Co-authored-by: Will Jones <will@sacharissa.co.uk>
2024-07-30 12:22:32 +00:00
..
doc.go Document Go packages (#6009) 2021-01-11 11:07:59 -07:00
provider.go Fix default provider names for parameterized providers (#16785) 2024-07-25 12:56:17 +00:00
provider_test.go Extend the TestReplacementParameterizedProvider test (#16644) 2024-07-15 08:33:36 +00:00
reference.go Allow anything in resource names (#14107) 2023-11-20 08:59:00 +00:00
reference_test.go ci: radical idea - what if slow tests & no stdout makes GH consider runner dead? 2022-03-06 14:52:13 -08:00
registry.go Ensure internal provider state doesn't clash with user config (#16837) 2024-07-30 12:22:32 +00:00
registry_test.go Normalize plugin.Provider methods to (Context, Request) -> (Response, error) (#16302) 2024-06-07 19:47:49 +00:00