2fd7069a09
The code that computed --target deletion dependants was not correct. It used parent/child component relationships, but did not respect actual DAG dependencies. As a result, it could erroneously leave hanging references to resources that no longer exist after performing a `pulumi destroy --target X` operation. This manifested in bugs like https://github.com/pulumi/pulumi/issues/6283, which is fixed by this change. The solution is to compute the (transitive!) dependency graph correctly, factoring in both parent/child, as well as explicit and implicit, dependencies. The existing logic does the correct thing once we do this. I've also added tests for this area, including regression tests that cover transitive dependency relationships, as well as ones that would cause an infinite loop given a naive implementation. |
||
---|---|---|
.. | ||
examples | ||
integration | ||
testprovider | ||
about_test.go | ||
config_test.go | ||
go.mod | ||
go.sum | ||
history_test.go | ||
login_test.go | ||
main_test.go | ||
README.md | ||
stack_test.go |
Integration Tests
This module provides integration tests for the Pulumi CLI.
The tests can be run via:
make test_all