mirror of https://github.com/pulumi/pulumi.git
2eaea39641
Parameterization refers to the ability for a provider to vary its schema based on a parameter that is passed to a new `Parameterize` call on the provider interface. The package reference that is returned may then be used to interact with the bespoke schema/packages within. Paramterization is key to e.g. dynamically bridging providers. In this instance we can manage and release a single "bridge" provider that accepts a parameter defining the upstream provider to bridge, and returns a reference to a dynamically constructed package whose schema reflects the upstream as needed. This commit adds support for calling parameterized `Invoke`s from the Python SDK. As with resources, the `get_package()` utility function is used to retrieve the parameter we bake into the SDK, before passing this to the engine. |
||
---|---|---|
.. | ||
benchmarks/go-alias-norm | ||
examples | ||
integration | ||
testdata | ||
testprovider | ||
.gitignore | ||
README.md | ||
about_test.go | ||
config_test.go | ||
go.mod | ||
go.sum | ||
history_test.go | ||
login_test.go | ||
main_test.go | ||
policy_new_test.go | ||
preview_only_test.go | ||
remote_test.go | ||
roundtrip_test.go | ||
smoke_test.go | ||
stack_test.go |
README.md
Integration Tests
This module provides integration tests for the Pulumi CLI.
The tests can be run via:
make test_all
Usage of Go build tags
In order to speed up integration tests in GitHub actions, Go build tags are used to conditionally compile the desired test cases.
// integration_nodejs_test.go
//go:build (nodejs || all) && !xplatform-acceptance
// integration_nodejs_acceptance_test.go
//go:build nodejs || all