microsoft / microsoft/AzureTRE

Deployment of Linux VMs shows as complete before it is ready

Open
#4,540 1 comment 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
235
Forks
192
Avg merge
1d 23h
Merged PRs (30d)
13

Description

The Linux VM user resource templates use cloud-init to configure and set up the VM to a useable state.

Azure will report the VM deployment as complete before the cloud-init scripts have completed.

If there is an error in the cloud-init scripts, this error will not be reported and the TRE UI will should the deployment as successful even when it is not.

A solution is to use either a custom script extension or the RunCommand sub-resource to run the script

cloud-init status --wait

The return code from the script will determine whether Azure reports the deployment of the VM as successful. or not. It can also be useful to check the existence of the file /var/run/reboot-required and trigger a reboot if needed.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the Linux VM user resource templates and the Azure deployment flow described in the issue. Compare using a Custom Script Extension or RunCommand to wait for cloud-init status --wait, including the documented /var/run/reboot-required check. Done means cloud-init failures affect deployment status instead of appearing successful, with reboot handling considered where needed.

Written by the indexing model from the issue text.

Assessment

Tech stack
azure, linux
Domain
cloud, infrastructure
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.