pulumi/pkg/resource/deploy
Thomas Gummerer 4169755866
Implement up --continue-on-error (#15740)
Similar to destroy --continue-on-error, this flag allows `pulumi up`
to continue if any errors are encountered.

Currently when we encounter an error while creating/updating a
resource, we cancel the context of the deployment executor, and thus
the deployment stops once the resources that are being processed in
parallel with the failed one finish being updated.

For --continue-on-error, we ignore these errors, and let the
deployment executor continue.  In order for the deployment executor to
exit eventually we also have to mark these steps as done, as the
deployment executor will otherwise just hang, and callers with open
channels waiting for it to finish/report back will hang indefinitely.

The errors in the step will still be reported back to the user by the
OnResourceStepPost callback.

Fixes https://github.com/pulumi/pulumi/issues/14515

---------

Co-authored-by: Fraser Waters <fraser@pulumi.com>
2024-04-22 11:12:45 +00:00
..
deploytest Implement up --continue-on-error (#15740) 2024-04-22 11:12:45 +00:00
providers [conformance tests] Fix run root and use program info everywhere (#15191) 2024-01-25 23:28:58 +00:00
builtins.go Use a generic wrapper around `sync.Map` (#15878) 2024-04-09 10:56:25 +00:00
builtins_test.go Use a generic wrapper around `sync.Map` (#15878) 2024-04-09 10:56:25 +00:00
deployment.go Use a generic wrapper around `sync.Map` (#15878) 2024-04-09 10:56:25 +00:00
deployment_executor.go Implement up --continue-on-error (#15740) 2024-04-22 11:12:45 +00:00
deployment_executor_test.go Fix handling of delete failures for targeted destroys (#14735) 2023-12-05 17:19:10 +00:00
deployment_test.go Allow anything in resource names (#14107) 2023-11-20 08:59:00 +00:00
doc.go Document Go packages (#6009) 2021-01-11 11:07:59 -07:00
import.go Revert "Run integration tests and dev builds with race detection" (#15998) 2024-04-19 16:57:16 +00:00
import_test.go upgrade to latest version of golangci-lint (#15977) 2024-04-19 06:20:33 +00:00
manifest.go Split Manifest type to it's own file (#8712) 2022-01-10 12:25:24 +00:00
manifest_test.go [ci] `pkg/resource/deploy` coverage (#14831) 2023-12-19 16:14:40 +00:00
plan.go Enable perfsprint linter (#14813) 2023-12-12 12:19:42 +00:00
plan_test.go [ci] `pkg/resource/deploy` coverage (#14831) 2023-12-19 16:14:40 +00:00
snapshot.go Revert "Run integration tests and dev builds with race detection" (#15998) 2024-04-19 16:57:16 +00:00
snapshot_test.go Revert "Run integration tests and dev builds with race detection" (#15998) 2024-04-19 16:57:16 +00:00
source.go Implement up --continue-on-error (#15740) 2024-04-22 11:12:45 +00:00
source_error.go Change Source.Iterate to return an error (#13996) 2023-09-20 14:34:24 +00:00
source_error_test.go [ci] `pkg/resource/deploy/source_error.go` coverage (#14982) 2023-12-22 20:57:52 +00:00
source_eval.go Implement up --continue-on-error (#15740) 2024-04-22 11:12:45 +00:00
source_eval_test.go deploytest/RegisterResource: return struct instead of values (#15988) 2024-04-19 11:08:56 +00:00
source_null.go Change Source.Iterate to return an error (#13996) 2023-09-20 14:34:24 +00:00
source_query.go Split CallRequest into ResourceCallRequest (#15404) 2024-02-08 13:16:23 +00:00
source_query_test.go Use the local artifacts, not released artifacts in conformance tests (#15777) 2024-03-26 13:10:34 +00:00
state_builder.go Revert "Run integration tests and dev builds with race detection" (#15998) 2024-04-19 16:57:16 +00:00
state_builder_test.go When changing parents also fix URNs (#13935) 2023-09-14 19:52:27 +00:00
step.go Implement up --continue-on-error (#15740) 2024-04-22 11:12:45 +00:00
step_executor.go Implement up --continue-on-error (#15740) 2024-04-22 11:12:45 +00:00
step_executor_test.go Use a generic wrapper around `sync.Map` (#15878) 2024-04-09 10:56:25 +00:00
step_generator.go Don't bail at preview when a protected resource needs replacement (#15969) 2024-04-18 16:45:52 +00:00
step_generator_test.go Remove trustDependencies option (#15745) 2024-03-21 10:14:07 +00:00
step_test.go Use a generic wrapper around `sync.Map` (#15878) 2024-04-09 10:56:25 +00:00
target.go Add tokens.StackName (#14487) 2023-11-15 07:44:54 +00:00
target_test.go upgrade to latest version of golangci-lint (#15977) 2024-04-19 06:20:33 +00:00