Feat: Handle state change lock in prepare downscale #20141
Draft
+16,914
−6,111
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.
What this PR does / why we need it:
This PR is part of proposal 4 described in this design document.
PR grafana/dskit#799 adds the ability to lock state change, this PR updates the prepare downscale handler to return 409 if the state change is locked.
We also have a PR in rollout-operator that properly handles this status code: grafana/rollout-operator#343
Which issue(s) this PR fixes:
Fixes
Special notes for your reviewer:
This PR is marked as draft because we need grafana/dskit#799 to be merged first and update go.mod to latest dskit.
Checklist
CONTRIBUTING.mdguide (required)featPRs are unlikely to be accepted unless a case can be made for the feature actually being a bug fix to existing behavior.docs/sources/setup/upgrade/_index.mddeprecated-config.yamlanddeleted-config.yamlfiles respectively in thetools/deprecated-config-checkerdirectory. Example PR