Conversation
When the API server refused to create an Instance, the WorkloadDeployment controller returned the error before writing any status. In production an over-long generated label failed 132 times in 75 minutes while the WorkloadDeployment and Workload both showed an empty status. Key changes: - Add the InstanceRejected reason for Instance writes the API server rejects as invalid or forbidden, which fail the same way on every retry - Set ReplicasReady to InstanceRejected with the API server's message, and Available too while no instance is ready, then requeue as before - Leave transient failures such as conflicts or an unreachable server off the status, since they clear on retry - Rank InstanceRejected with the other hard errors in the Workload rollup so it outranks provisioning, quota and referenced-data blockers - Catalog the reason for the diagnosis agent as a platform fault
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
When the platform could not create an instance for a workload, the workload's status stayed empty, so the customer saw nothing running and no reason why.
The workload and its deployment now report the rejection as unavailable, quoting the API error, and this answer outranks slower causes such as provisioning or quota.
Errors that clear on retry, such as a conflict or a brief outage, still retry without touching status.
Test plan
Related to #367