This changes a few aspects of resource properties: * Move all runtime-related goo into the runtime module, in an internal PromiseState class. This encapsulates the internal state transitions and protects against misuse. It also allows us to clean up the public API for the Property<T> type so that it's entirely suitable for external usage. * Track input and output property values distinctly. It turns out we want to key off events differently. For example, to marshal property values to a resource provider, we only care about the inputs. For final property values that are used in, say, thens or as inputs to other properties, we want the output property value. * Be more precise about when an output is truly final, and known, or unknown due to planning/dry-runs. Note that this does mean that we'll encounter unknown values more frequently because, aside from IDs and URNs, we can't say for sure that arbitrary properties will never change post-creation. We have ideas on how to denote this; see pulumi/pulumi-fabric#330 for more details.
10 lines
256 B
TypeScript
10 lines
256 B
TypeScript
// Copyright 2016-2017, Pulumi Corporation. All rights reserved.
|
|
|
|
export * from "./closure";
|
|
export * from "./config";
|
|
export * from "./langhost";
|
|
export * from "./log";
|
|
export * from "./property";
|
|
export * from "./resource";
|
|
export * from "./settings";
|
|
|