mirror of https://github.com/pulumi/pulumi.git
248f78bafe
Add support to the core SDKs for reporting resource source positions. In each SDK, this is implemented by crawling the stack when a resource is registered in order to determine the position of the user code that registered the resource. This is somewhat brittle in that it expects a call stack of the form: - Resource class constructor - abstract Resource subclass constructor - concrete Resource subclass constructor - user code This stack reflects the expected class hierarchy of "cloud resource / component resource < customresource/componentresource < resource". For example, consider the AWS S3 Bucket resource. When user code instantiates a Bucket, the stack will look like this in NodeJS: new Resource (/path/to/resource.ts:123:45) new CustomResource (/path/to/resource.ts:678:90) new Bucket (/path/to/bucket.ts:987:65) <user code> (/path/to/index.ts:4:3) In order to determine the source position, we locate the fourth frame (the `<user code>` frame). |
||
---|---|---|
.. | ||
automation | ||
data/lazy_import_test | ||
langhost | ||
provider | ||
runtime | ||
__init__.py | ||
conftest.py | ||
helpers.py | ||
test_broken_dynamic_provider.py | ||
test_monitor_termination.py | ||
test_next_serialize.py | ||
test_output.py | ||
test_resource.py | ||
test_runtime_to_json.py | ||
test_stack_reference.py | ||
test_stack_registers_outputs.py | ||
test_translate_output_properties.py | ||
test_types_input_type.py | ||
test_types_input_type_types.py | ||
test_types_output_type.py | ||
test_types_resource_types.py | ||
test_urn.py | ||
test_utils.py |