pulumi/tests/integration
Will Jones 1515db22f1 Support `pulumi.Config` in dynamic providers
As well as responding to `Configure` gRPC calls, a resource provider
binary can also accept configuration from the engine via the
`PULUMI_CONFIG` environment variable. Presently, the engine will only
send configuration namespaced to the provider in question, and will
strip namespaces when doing so. So, given an example host configuration
of:

```
config:
  aws:region: eu-west-1
  foo:bar: baz
```

an `aws` provider will be provided with
`PULUMI_CONFIG='{"region":"eu-west-1"}'`, whereas a `gcp` provider will
receive `PULUMI_CONFIG='{}'`, matching neither `aws:region` nor
`foo:bar`.

This is problematic for dynamic providers, since they are authored in
and typically considered part of the user's program, and not as a
separate entity. Consequently it is not unreasonable for a dynamic
provider author to expect to have access to the entirety of the Pulumi
configuration through e.g. `pulumi.Config`, just like any other code in
their program -- #17050 and #4512 are two examples.

This commit makes us live up to this expectation. Dynamic providers now
receive all configuration values, with the namespaces preserved so that
existing `pulumi.Config` code can work in a dynamic provider like it
works everywhere else.

Fixes #17050
2024-09-10 17:21:20 +01:00
..
about Bump go modules (#16051) 2024-04-25 14:30:00 +00:00
aliases Enable goheader rule and add missing license headers (#15473) 2024-09-09 12:05:45 +00:00
backend/diy Enable goheader rule and add missing license headers (#15473) 2024-09-09 12:05:45 +00:00
cloud_secrets_provider Enable full strict mode. (#3218) 2019-09-11 16:21:35 -07:00
component_provider_schema Add RunPlugin support for python 2023-03-06 21:35:39 +00:00
config_basic Bump go modules (#16051) 2024-04-25 14:30:00 +00:00
config_capture_e2e/nodejs Revert package.json lookup fix. 2023-05-15 14:14:57 -04:00
config_missing Bump go modules (#16051) 2024-04-25 14:30:00 +00:00
config_secrets_warn Bump go modules (#16051) 2024-04-25 14:30:00 +00:00
construct_component Bump go modules (#16051) 2024-04-25 14:30:00 +00:00
construct_component_configure_provider Changelog and go.mod updates for v3.131.0 (#17166) 2024-09-05 07:07:48 +00:00
construct_component_error_apply Update @types/node version in tests 2023-02-07 14:20:27 +00:00
construct_component_id_output [python/sdk] Allow remote components to use output property called id (#15115) 2024-01-18 13:54:09 +00:00
construct_component_methods Bump go modules (#16051) 2024-04-25 14:30:00 +00:00
construct_component_methods_errors Bump go modules (#16051) 2024-04-25 14:30:00 +00:00
construct_component_methods_provider Bump the go_modules group across 5 directories with 1 update (#16054) 2024-04-25 21:11:41 +00:00
construct_component_methods_resources Bump go modules (#16051) 2024-04-25 14:30:00 +00:00
construct_component_methods_unknown Bump go modules (#16051) 2024-04-25 14:30:00 +00:00
construct_component_output_values Bump go modules (#16051) 2024-04-25 14:30:00 +00:00
construct_component_plain Bump go modules (#16051) 2024-04-25 14:30:00 +00:00
construct_component_provider Bump go modules (#16051) 2024-04-25 14:30:00 +00:00
construct_component_provider_explicit Bump go modules (#16051) 2024-04-25 14:30:00 +00:00
construct_component_provider_propagation Update go.mod to 1.21 (#17140) 2024-09-03 12:37:49 +00:00
construct_component_resource_options Update go.mod to 1.21 (#17140) 2024-09-03 12:37:49 +00:00
construct_component_slow Update @types/node version in tests 2023-02-07 14:20:27 +00:00
construct_component_unknown Bump the go_modules group across 5 directories with 1 update (#16054) 2024-04-25 21:11:41 +00:00
construct_nested_component/go Update go.mod to 1.21 (#17140) 2024-09-03 12:37:49 +00:00
custom_timeouts Enable goheader rule and add missing license headers (#15473) 2024-09-09 12:05:45 +00:00
delete_before_create Enable goheader rule and add missing license headers (#15473) 2024-09-09 12:05:45 +00:00
deleted_with Bump the go_modules group across 5 directories with 1 update (#16054) 2024-04-25 21:11:41 +00:00
dependency_steps Enable goheader rule and add missing license headers (#15473) 2024-09-09 12:05:45 +00:00
double_pending_delete Enable goheader rule and add missing license headers (#15473) 2024-09-09 12:05:45 +00:00
duplicate_urns Enable goheader rule and add missing license headers (#15473) 2024-09-09 12:05:45 +00:00
dynamic Support `pulumi.Config` in dynamic providers 2024-09-10 17:21:20 +01:00
ee_perf Use prefered `new pulumi.Config()` form 2019-01-31 16:11:57 -08:00
empty Bump the go_modules group across 24 directories with 1 update (#15685) 2024-03-14 07:52:34 +00:00
enums [tests/integration] Remove `pulumi` from `requirements.txt` (#15226) 2024-01-24 14:16:40 +00:00
environments_basic [environments] Add integration tests (#14144) 2023-10-12 16:39:26 +00:00
environments_merge [environments] Add integration tests (#14144) 2023-10-12 16:39:26 +00:00
exclude_protected Implement the --exclude-protected feature (#8359) 2021-11-15 11:45:14 -08:00
explicit_provider Remove unused `package.json` files from tests (#13162) 2024-07-08 14:09:16 +00:00
gather_plugin Bump the go_modules group across 24 directories with 1 update (#15685) 2024-03-14 07:52:34 +00:00
get_created Remove unused `package.json` files from tests (#13162) 2024-07-08 14:09:16 +00:00
get_resource Bump the go_modules group across 24 directories with 1 update (#15685) 2024-03-14 07:52:34 +00:00
go Use provided ImportBasePath for parameterized SDKs (#17036) 2024-08-21 12:02:32 +00:00
invalid_package_json Revert package.json lookup fix. 2023-05-15 14:14:57 -04:00
large_resource Bump the go_modules group across 24 directories with 1 update (#15685) 2024-03-14 07:52:34 +00:00
nodejs Support `pulumi.Config` in dynamic providers 2024-09-10 17:21:20 +01:00
partial_state Enable goheader rule and add missing license headers (#15473) 2024-09-09 12:05:45 +00:00
partial_values Propagate inputs to outputs during preview. (#3327) 2019-11-11 12:09:34 -08:00
policy Enable goheader rule and add missing license headers (#15473) 2024-09-09 12:05:45 +00:00
printf Bump the go_modules group across 24 directories with 1 update (#15685) 2024-03-14 07:52:34 +00:00
project_main Bump the go_modules group across 24 directories with 1 update (#15685) 2024-03-14 07:52:34 +00:00
project_main_abs Enable absolute and relative parent paths for pulumi main (#6734) 2021-04-08 21:39:52 -07:00
project_main_parent/foo Enable absolute and relative parent paths for pulumi main (#6734) 2021-04-08 21:39:52 -07:00
protect_resources Enable goheader rule and add missing license headers (#15473) 2024-09-09 12:05:45 +00:00
provider_secret_config Enable full strict mode. (#3218) 2019-09-11 16:21:35 -07:00
python Add parameterization support for call & read in python (#16915) 2024-08-09 10:43:41 +00:00
python_await Cleanup output futures list as they complete (#16057) 2024-04-26 16:35:28 +00:00
query Enable goheader rule and add missing license headers (#15473) 2024-09-09 12:05:45 +00:00
read Enable goheader rule and add missing license headers (#15473) 2024-09-09 12:05:45 +00:00
recreate_resource_check Enable goheader rule and add missing license headers (#15473) 2024-09-09 12:05:45 +00:00
refresh/go Bump the go_modules group across 24 directories with 1 update (#15685) 2024-03-14 07:52:34 +00:00
resource_refs_get_resource ResourceRefsGetResourceGo: also wait for the childs message to be registered (#17116) 2024-09-03 10:35:37 +00:00
rotate_passphrase Bump the go_modules group across 5 directories with 1 update (#16054) 2024-04-25 21:11:41 +00:00
secret_outputs [sdk/python] Fix secret regression (#5496) 2020-10-01 14:57:51 -07:00
single_resource Suppress JSON outputs in preview correctly (#2771) 2019-05-25 12:10:38 +02:00
stack_bad_parenting Consistent dependencies (#2517) 2019-03-05 20:34:51 -08:00
stack_dependencies Remove existing lock files 2018-11-12 15:33:58 -08:00
stack_outputs Remove dotnet 2022-12-13 16:13:53 +00:00
stack_outputs_program_error Fix: Don't delete stack outputs on failed deployments (#15754) 2024-03-25 22:37:46 +00:00
stack_outputs_resource_error Fix: Don't delete stack outputs on failed deployments (#15754) 2024-03-25 22:37:46 +00:00
stack_parenting Consistent dependencies (#2517) 2019-03-05 20:34:51 -08:00
stack_project_name Actually fix the naming test (#10554) 2022-08-31 20:52:23 +01:00
state_rename_parent Bump the go_modules group across 5 directories with 1 update (#16054) 2024-04-25 21:11:41 +00:00
steps Enable goheader rule and add missing license headers (#15473) 2024-09-09 12:05:45 +00:00
targets Enable goheader rule and add missing license headers (#15473) 2024-09-09 12:05:45 +00:00
transformations Enable goheader rule and add missing license headers (#15473) 2024-09-09 12:05:45 +00:00
transforms Enable goheader rule and add missing license headers (#15473) 2024-09-09 12:05:45 +00:00
tsconfig Add tsconfig option to specify tsconfig path (#8452) 2021-11-22 11:42:39 -08:00
types Enable goheader rule and add missing license headers (#15473) 2024-09-09 12:05:45 +00:00
unsafe_snapshot_tests/bad_resource Update tests/integration/unsafe_snapshot_tests/bad_resource/resource.ts 2022-09-15 08:00:36 -07:00
valid-property-names Enable goheader rule and add missing license headers (#15473) 2024-09-09 12:05:45 +00:00
.gitignore ci: Enable async component builds 2022-09-14 10:06:05 -07:00
appdash_test.go Enable goheader rule and add missing license headers (#15473) 2024-09-09 12:05:45 +00:00
component_setup.sh Engine and Golang support for shimless providers 2022-11-14 11:25:41 +00:00
integration_acceptance_test.go Run Environment.DeleteIfNotFailed after tests complete (#16730) 2024-07-23 10:37:01 +00:00
integration_go_acceptance_test.go test: Update deps (#16010) 2024-04-24 05:07:52 +00:00
integration_go_test.go add debugging support to Go language host (#17102) 2024-09-06 09:49:07 +00:00
integration_nodejs_acceptance_test.go Run Environment.DeleteIfNotFailed after tests complete (#16730) 2024-07-23 10:37:01 +00:00
integration_nodejs_test.go Support `pulumi.Config` in dynamic providers 2024-09-10 17:21:20 +01:00
integration_python_acceptance_test.go Run Environment.DeleteIfNotFailed after tests complete (#16730) 2024-07-23 10:37:01 +00:00
integration_python_test.go Add parameterization support for call & read in python (#16915) 2024-08-09 10:43:41 +00:00
integration_test.go Install missing python versions using pyenv during installation (#16855) 2024-08-19 15:55:54 +00:00
integration_util_test.go Replace some more uses of assert.Contains(err.Error()) with assert.ErrorContains (#14863) 2023-12-15 17:45:32 +00:00