PSS: Allow pluggable state store configuration to be stored in a plan file #37956
+516
−68
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.
Context
The process of how data gets into a planfile created by a
plancommand is a little convoluted, so here is a diagram attempting to explain how it works. Note that the diagram explains how it works after the changes of this PR, so describes parallel backend- and state store-related fields in places, but broadly the sequence of events is unchanged.This PR
Follows after #37246, which began implementing use of pluggable state stores with planfiles.
planand use that in anapplycommand:plan: d0f8834stateStoreConfigStatePlanOutStateStorefield with a description of the state store's config.PlanOutStateStorefield can be used when writing the plan fileThis PR adds some test coverage of the new features in integration tests. There are no E2E tests in this PR and instead the stacked PR #37957 includes an E2E test that shows the full init-plan-apply workflow performed with a pluggable state store.
Target Release
1.15.x
Rollback Plan
Changes to Security Controls
Are there any changes to security controls (access controls, encryption, logging) in this pull request? If so, explain.
CHANGELOG entry