Summary
Prototype replacing the Azure release-mode SSH marker readiness wait with Azure VM Custom Script Extension provisioning status.
Background
Issue #90 documented provider-native setup readiness options. Azure is the best first candidate because azurerm_virtual_machine_extension can expose setup success/failure through Terraform without adding learner-facing IAM or SSM-style dependencies.
Prototype scope
- Azure only.
- Release mode only.
- Preserve
use_local_setup=true contributor behavior and the existing local upload/test path.
- Keep existing setup marker files for troubleshooting consistency.
- Keep learner deployment simple: no extra manual Azure setup beyond the existing Terraform inputs.
Acceptance criteria
- Evaluate whether
azurerm_virtual_machine_extension can run the release setup flow and make Terraform wait for extension success/failure.
- Document any VM agent, logging, timeout, script size, or troubleshooting differences.
- Ensure
public_ip_address is not exposed as ready until setup completes in release mode.
- Confirm contributor-mode testing behavior remains unchanged.
- Decide whether the Azure prototype is cleaner and reliable enough to replace the current Azure SSH marker wait.
Related to #90.
Summary
Prototype replacing the Azure release-mode SSH marker readiness wait with Azure VM Custom Script Extension provisioning status.
Background
Issue #90 documented provider-native setup readiness options. Azure is the best first candidate because
azurerm_virtual_machine_extensioncan expose setup success/failure through Terraform without adding learner-facing IAM or SSM-style dependencies.Prototype scope
use_local_setup=truecontributor behavior and the existing local upload/test path.Acceptance criteria
azurerm_virtual_machine_extensioncan run the release setup flow and make Terraform wait for extension success/failure.public_ip_addressis not exposed as ready until setup completes in release mode.Related to #90.