Identifying Failed Resources
Resources in a failed state appear with[FAILED] when listed:
Common Failure Scenarios
Configuration Errors
The most common cause of failure is invalid configuration:- Missing required fields - A required config value is missing
- Invalid values - A value doesn’t match the expected format or constraints
- Permission errors - The provider doesn’t have access to create or modify the resource
Dependency Failures
A resource fails if its dependencies aren’t satisfied:- Missing dependency - A referenced resource doesn’t exist
- Dependency not ready - A dependency exists but isn’t in READY state
- Invalid field reference - A
${...}reference points to a field that doesn’t exist
Provider Errors
Sometimes the underlying provider (GCP, AWS, etc.) rejects the operation:- Quota exceeded - You’ve hit a service limit
- Resource conflicts - A resource with that name already exists outside pragma
- Service unavailable - Temporary provider outage
Using the Dead Letter Queue
When a resource operation fails after retries, it moves to the dead letter queue. This prevents failed operations from blocking other work and preserves the failure details for investigation.List Failed Events
See all failed events:Inspect Event Details
Get the full error message and context:- The resource that failed
- The full error message
- When the failure occurred
- The operation that was attempted
Retry Failed Events
After fixing the underlying issue, retry the failed operation:Clear Resolved Events
Once you’ve addressed failures (or decided to abandon them), remove events from the queue:Dependency Failure Cascades
When a resource fails, it affects downstream resources:- Failed resources stay failed - They don’t retry automatically
- Dependent resources wait - Resources that depend on a failed resource stay in PENDING
- Changes don’t propagate - The dependency graph pauses until the failure is resolved
reports resource can’t proceed because analytics is failed. To recover:
- Fix the
analyticsconfiguration - Re-apply with
--pendingto retry - Once
analyticsreaches READY,reportswill automatically proceed
Recovery Workflow
When you encounter failures, follow this workflow:Preventing Failures
Reduce failures by:- Validating configuration before applying with
--pending - Checking dependencies are READY before applying dependent resources
- Using draft mode - Apply without
--pendingfirst to validate, then apply with--pending - Monitoring dead letter queue regularly for early warning of issues