Skip to content

refactor(deploy_tee): shared LUKS poller; tolerate transient wipe errors#51

Merged
samlaf merged 1 commit into
mainfrom
luks-poller-refactor
Jul 2, 2026
Merged

refactor(deploy_tee): shared LUKS poller; tolerate transient wipe errors#51
samlaf merged 1 commit into
mainfrom
luks-poller-refactor

Conversation

@samlaf

@samlaf samlaf commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

Extract the render-free polling state machine out of watch_luks_provisioning into poll_provisioning, yielding updates until a terminal one — the single-node watch (seismic-tee status, configure's post-POST wait) and the upcoming parallel cohort dashboard consume the same states. Two behavior changes ride along:

  • A lone error status is no longer terminal. setup-persistent-luks writes error per failed attempt and can recover on the next (Restart=on-failure), so the watch only fails on an error that persists ERROR_GRACE_SECONDS with no recovery in between.
  • An optional stop event ends a poll within one interval, letting a multi-node watcher cancel on ctrl-C instead of waiting out a 1h+ wipe.

Extract the render-free polling state machine out of
watch_luks_provisioning into poll_provisioning, yielding updates until
a terminal one — the single-node watch (seismic-tee status, configure's
post-POST wait) and the upcoming parallel cohort dashboard consume the
same states. Two behavior changes ride along:

- A lone `error` status is no longer terminal. setup-persistent-luks
  writes `error` per failed attempt and can recover on the next
  (Restart=on-failure), so the watch only fails on an error that
  persists ERROR_GRACE_SECONDS with no recovery in between.
- An optional stop event ends a poll within one interval, letting a
  multi-node watcher cancel on ctrl-C instead of waiting out a 1h+ wipe.
@samlaf samlaf merged commit b514ab5 into main Jul 2, 2026
1 check passed
@samlaf samlaf deleted the luks-poller-refactor branch July 2, 2026 13:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant