-
Notifications
You must be signed in to change notification settings - Fork 10.1k
PSS: Allow pluggable state store configuration to be stored in a plan file and used during an apply operation #37248
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
PSS: Allow pluggable state store configuration to be stored in a plan file and used during an apply operation #37248
Conversation
|
The equivalence tests failed. Please investigate here. |
|
The equivalence tests failed. Please investigate here. |
7b80adb to
a2acc33
Compare
1da8373 to
cd0c5b2
Compare
|
The equivalence tests failed. Please investigate here. |
a42acd7 to
2415a6f
Compare
2415a6f to
a5a439f
Compare
a5a439f to
1f72760
Compare
|
The equivalence tests failed. Please investigate here. |
cb564b4 to
388ced0
Compare
|
The equivalence tests failed. Please investigate here. |
e3453d7 to
d7cb4cb
Compare
This helps with navigating ambiguity around the word backend. The new name should indicate that the value represents a `backend` block, not a more general interpretation of what a backend is.
…to a lack of data. Don't change it if pluggable state storage is in use.
…sentation of a backend or state_store is empty/unset. Add tests. The alternative approach would be to change the existing `Backend` field in the `Plan` struct to be a pointer. I'm open to either option, but the approach of using an `Empty` method matches existing work in the `workdir` package when inspecting the backend state file, and that seems a similar use-case to inspecting the plan file.
… isn't present; this is valid if the schema contains no attributes or blocks.
…sing that data when creating a plan file.
…ng it to prepare a Local backend that uses the state store
88c80eb to
ef2b038
Compare
| Type: "local", | ||
| Config: backendConfigRaw, | ||
| Type: "local", | ||
| Config: backendConfigRaw, | ||
| Workspace: "default", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Without this change a lot of existing tests started failing because the Backend 's Empty method returned true, due to the Workspace value being unset.
Error: plan does not have a backend or state_store configuration
…ly isn't valid for `stateStoreConfigState` to be nil I'm about 90% sure that backendConfigState being nil is ok <_<
…rmine if data is present for a state store or backend in a planfile
… file with the expected state_store configuration data
…an file to configure and use a state store
88d8f75 to
8a12015
Compare
…e full init-plan-apply workflow
…quired providers, if PSS is in use. See the code comment added in this commit. This addition does not impact an apply command as the missing provider will be detected before this code is executed. However I'm making this change so that the method is still accurate is being able to return a complete list of providers needed by the plan.
…Backend, so the planfile's Backend struct isn't flagged as empty.
… the Backend config are set
…ccessing the Backend field on a Plan struct
8a12015 to
c8d17ba
Compare
…te a nil check in calling code.
…or state store config when getting a backend from a planfile
… a plan's description of a backend or state store is complete
…e store is complete when reading or writing a plan file
c8d17ba to
8900e1e
Compare
Follow up to #37246, which began implementing use of pluggable state stores with planfiles.
This PR:
Target Release
N/A
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