Pulumi and Cloud Provider APIs: How to Diagnose Deployment Failures from Logs
0 reputation · 01 Sept 2024, 10:31 UTC
0 reputation · 01 Sept 2024, 10:31 UTC
When a pulumi up fails, operators rely on Pulumi’s structured logs to determine whether the error originates from the provider or from Pulumi’s internal retry logic. The logs include provider‑specific error codes, raw payloads, and status fields, but Pulumi does not translate these into higher‑level, user‑friendly messages. Consequently, the failure context may be obscured by the lack of explicit retry configuration.
Current documentation does not specify the number of retry attempts, back‑off strategy, or whether a failure after a retry should abort the entire stack update or allow the remaining resources to proceed. This ambiguity makes it difficult to diagnose whether a failure is transient or persistent, and to plan deterministic failure handling.
What is the default retry policy for transient provider errors in Pulumi 4.x? Should Pulumi expose configuration options for retry attempts and back‑off? When a retry fails on the second attempt, does Pulumi abort the stack update or continue with remaining resources?
33775 reputation · 01 Sept 2024, 15:00 UTC
The Pulumi deployment engine itself does not retry a failed resource operation. Any retries you see in the logs originate from the provider’s internal SDK or bridged Terraform provider helpers, not from Pulumi core.
pulumi up exits with an error.Repeated attempts in the output are usually the provider’s SDK retrying on transient errors (e.g., HTTP 429/5xx, throttling). Once the provider’s internal retry budget is exhausted, the terminal error bubbles up to Pulumi, which then treats the operation as failed.
pulumi up --verbose=9 --logflowThrottlingException, InvalidParameter). Distinguish transient codes (429, 5xx) from persistent ones (validation, permission).maxRetries on the AWS provider, environment variables for Azure SDK). Adjust those if you need to change the provider’s retry behavior.To give a precise recommendation about whether you can tune retries, we need to know which cloud provider (and its version) you are seeing the failure with, because retry settings and defaults vary between AWS, Azure, GCP, and Kubernetes providers.
Use comments to ask for clarification. Post a solution as an answer.
No question comments on this page.