Skip to content

feat: persist configuration across terraform interrupts - #795

Open
zreigz wants to merge 3 commits into
mainfrom
lukasz/prod-5193-plural-up-requires-you-to-reconfigure-the-full-menu-if-it
Open

feat: persist configuration across terraform interrupts#795
zreigz wants to merge 3 commits into
mainfrom
lukasz/prod-5193-plural-up-requires-you-to-reconfigure-the-full-menu-if-it

Conversation

@zreigz

@zreigz zreigz commented Sep 7, 2026

Copy link
Copy Markdown
Member

Summary

Skip re-prompting on resume and flush deploy checkpoints immediately so a stop does not force the wizard to start over.

Labels

Test Plan

Checklist

  • If required, I have updated the Plural documentation accordingly.
  • I have added tests to cover my changes.
  • I have added a meaningful title and summary to convey the impact of this PR to a user.
  • I have added relevant labels to this PR to help with categorization for release notes.

@linear

linear Bot commented Sep 7, 2026

Copy link
Copy Markdown

PROD-5193

@zreigz zreigz added the enhancement New feature or request label Sep 7, 2026
@zreigz zreigz changed the title persist configuration across terraform interrupts feat: persist configuration across terraform interrupts Sep 7, 2026
@greptile-apps

greptile-apps Bot commented Sep 7, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR persists app-domain prompt completion and deployment checkpoints so interrupted setup can resume without repeating completed work.

  • Adds an explicit marker for an answered or skipped app-domain prompt.
  • Flushes that marker and each successful deployment checkpoint immediately.
  • Adds tests for app-domain and checkpoint persistence.
  • The new persistence calls still rely on a non-atomic manifest rewrite, leaving a narrow interruption-related corruption risk.

Confidence Score: 4/5

The PR appears safe to merge, with a non-blocking hardening opportunity to make the newly frequent manifest writes atomic.

The resume markers and checkpoint ordering are persisted and tested correctly, but an interruption during the direct manifest rewrite can still corrupt the state needed for resume.

Files Needing Attention: pkg/up/deploy.go

Important Files Changed

Filename Overview
cmd/command/up/up.go Skips completed app-domain configuration and immediately persists both selected domains and explicit skips.
cmd/command/up/up_test.go Covers legacy configuration detection and YAML persistence of selected or skipped app domains.
pkg/manifest/types.go Adds the app-domain completion marker to manifest YAML and JSON serialization.
pkg/up/deploy.go Flushes every successful checkpoint immediately, but the underlying manifest rewrite is not atomic against interruption.
pkg/up/deploy_test.go Verifies checkpoint advancement, persistence, failure behavior, and skipping of completed phases.

Reviews (1): Last reviewed commit: "add comment" | Re-trigger Greptile

Comment thread pkg/up/deploy.go
@socket-security

Copy link
Copy Markdown

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Updatedgoogle.golang.org/​grpc@​v1.82.1 ⏵ v1.83.175 +1100 +16100100100

View full report

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

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant