Skip to content

chore: Remove PSS-related gating flag/ENV in the init command#38268

Draft
SarahFrench wants to merge 2 commits intomainfrom
pss/cleanup-init-gating-flag
Draft

chore: Remove PSS-related gating flag/ENV in the init command#38268
SarahFrench wants to merge 2 commits intomainfrom
pss/cleanup-init-gating-flag

Conversation

@SarahFrench
Copy link
Member

@SarahFrench SarahFrench commented Mar 12, 2026

Follows #38227

That previous PR combines the two versions of init logic that were present when PSS was in earlier development (see PR description). The choice of which version to use was controlled by a flag -enable-pluggable-state-storage-experiment, and that PR removed the ability to make that choice; all users now experience the new init flow that is necessary for PSS.

It should now be that anyone can use PSS as long as experiments are enabled (and they have a provider implementing it). However that alpha still returns this error that enforces the flag being provided:

│ Error: Pluggable state store experiment not supported

│ on main.tf line 7, in terraform:
│ 7: state_store "pss_fs" {

│ Pluggable state store is an experiment which requires -enable-pluggable-state-storage-experiment flag

This PR removes remaining code related to the flag -enable-pluggable-state-storage-experiment and the related ENV TF_ENABLE_PLUGGABLE_STATE_STORAGE.

Target Release

1.15.x

Rollback Plan

  • If a change needs to be reverted, we will roll out an update to the code within 7 days.

Changes to Security Controls

Are there any changes to security controls (access controls, encryption, logging) in this pull request? If so, explain.

CHANGELOG entry

  • This change is user-facing and I added a changelog entry.
  • This change is not user-facing.

It is technically user-facing, but this is all still gated behind experiments being enabled, so not user facing by the definition that matters here.

@SarahFrench SarahFrench added the no-changelog-needed Add this to your PR if the change does not require a changelog entry label Mar 12, 2026
@SarahFrench SarahFrench marked this pull request as ready for review March 12, 2026 17:00
@SarahFrench SarahFrench requested a review from a team as a code owner March 12, 2026 17:00
}

args := []string{"-enable-pluggable-state-storage-experiment=true"}
args := []string{}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is just a note for future code writing, no changes needed, but for what it's worth, c.Run(nil) or c.Run([]string{}) also work fine, and don't allocate an otherwise unused variable. I try to avoid variables that aren't adding anything but lines (again, not hurting anything, no changes needed).

@SarahFrench
Copy link
Member Author

SarahFrench commented Mar 17, 2026

We've decided to pause removing this until GA, so I'm gonna save merging this until the next beta is out

@radeksimko radeksimko marked this pull request as draft March 17, 2026 19:15
@radeksimko
Copy link
Member

Marking this as draft for now until we are ready to remove the gating, as per our Slack conversation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

no-changelog-needed Add this to your PR if the change does not require a changelog entry

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants