pulumi/pkg
Will Jones dc6f275f03
Fix dependency traversal for untargeted skipped creates (#17340)
When performing a `--target`ed operation, it is possible that the new
program introduces new resources that are not targeted. In such cases,
we can't emit `CreateStep`s (since that would not respect the
`--target`s), but we need to track the creations so that e.g. later
resources that will come to depend on these would-be resources can be
handled appropriately. The step generator maintains a list of so-called
"skipped creates" to this end.

Unfortunately, when later traversing the list of skipped creates to see
if any resources depend on them, "depend on" does not take into account
property dependencies and deleted-with relationships. This results in
snapshot integrity errors as we end up writing the broken dependencies
to the state. This commit rewrites the code to use the new
`GetAllDependencies()` method on `resource.State` to take account of the
other possible relationships, adding lifecycle tests for these new cases
and cleaning up the existing tests to be more specific about the errors
they expect.
2024-09-23 15:02:37 +00:00
..
asset Move some asset code to pkg (#15162) 2024-01-17 11:30:37 +00:00
authhelpers Enable goheader rule and add missing license headers (#15473) 2024-09-09 12:05:45 +00:00
backend Retry token errors immediately (#17338) 2024-09-23 12:09:49 +00:00
cmd/pulumi Add more state delete tests (#17331) 2024-09-23 08:57:25 +00:00
codegen [python] First-class output-versioned invokes that maintain secrets (#17275) 2024-09-22 18:23:27 +00:00
display Move sdk/go/common/display to /pkg/display (#13954) 2023-09-18 11:01:28 +00:00
engine Fix dependency traversal for untargeted skipped creates (#17340) 2024-09-23 15:02:37 +00:00
graph Adds a flag to graph command to insert fragment (#14858) 2024-01-08 22:03:08 +00:00
importer [cli/import] Fix undefined variable errors in code generation when imported resources use a parent or provider (#16786) 2024-07-25 13:53:44 +00:00
operations Move resource.URN to urn.URN (#15689) 2024-03-14 15:28:32 +00:00
resource Fix dependency traversal for untargeted skipped creates (#17340) 2024-09-23 15:02:37 +00:00
secrets Enable goheader rule and add missing license headers (#15473) 2024-09-09 12:05:45 +00:00
testing/integration Switch back to `os/user` to get the current user (#17125) 2024-08-31 18:54:35 +00:00
util Enable goheader rule and add missing license headers (#15473) 2024-09-09 12:05:45 +00:00
version duplicate version to ensure linking is properly handled 2020-03-19 12:49:34 -07:00
workspace Enable goheader rule and add missing license headers (#15473) 2024-09-09 12:05:45 +00:00
README.md export codegen tests for internal use (#8928) 2022-02-07 12:10:04 +01:00
go.mod Update yaml to 1.10.3 (#17304) 2024-09-19 15:29:42 +00:00
go.sum Update yaml to 1.10.3 (#17304) 2024-09-19 15:29:42 +00:00

README.md

pulumi/pkg

While pulumi/sdk maintains strict backwards compatibility guarantees, code under pkg/ is handled more informally: while breaking changes are still discouraged they may happen when they make sense.