Skip to content

feat(fwdctl/launch): add SSM-based monitor/follow flow for cloud-init and bootstrap progress (2/4)#1663

Merged
AminR443 merged 27 commits intomainfrom
amin/fwd-launcher-pr-2
Feb 11, 2026
Merged

feat(fwdctl/launch): add SSM-based monitor/follow flow for cloud-init and bootstrap progress (2/4)#1663
AminR443 merged 27 commits intomainfrom
amin/fwd-launcher-pr-2

Conversation

@AminR443
Copy link
Contributor

@AminR443 AminR443 commented Feb 9, 2026

Why this should be merged

This PR introduces launch monitoring for fwdctl using AWS SSM. It closes the visibility gap after instance startup by exposing cloud-init stage progress and optional bootstrap re-execution progress without requiring SSH access.

This is important for:

  • Faster debugging when launch stages fail
  • Better operator visibility during long-running setup/replay flows
  • More deterministic failure context (stage, command index, exit code)

How this works

The launcher now writes structured cloud-init state to /var/log/cloud-init-state.json and updates it after each stage/command via a small helper script. A new SSM monitor module polls this state and renders progress in real time.

How this was tested

Manually.

Design Notes

  1. SSM-first monitoring: SSM is chosen over SSH so monitoring works with standard AWS controls and without opening additional access paths.
  2. Structured state file: stage state is persisted as JSON in cloud-init, making progress/failure reporting deterministic instead of log-pattern-based.

@AminR443 AminR443 marked this pull request as ready for review February 9, 2026 08:43
Base automatically changed from amin/fwd-launcher-pr-1 to main February 11, 2026 09:30
@AminR443 AminR443 merged commit 49b6ae6 into main Feb 11, 2026
51 checks passed
@AminR443 AminR443 deleted the amin/fwd-launcher-pr-2 branch February 11, 2026 16:25
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.

2 participants