Topics: Unattended Deployment

Unattended Deployment

An unattended deployment wipes a machine's disk and installs Windows with nobody at the keyboard. It is what lets a room of machines image itself from a single PXE boot. It is also the one setting in FluxDeploy that can erase a disk without asking, so it takes two separate consents.

The two consents

  1. The boot image is built as unattended (the Unattended option when you build a boot image). This applies to every machine that boots that image - including one that only fell through to network boot because its own disk would not start.
  2. The recipe allows unattended deployment. On the recipe page, Overview > Unattended deployment switches it on or off for that recipe.

The agent wipes without asking only when both say yes. When the boot image is unattended but the recipe does not allow it, the agent asks the technician to type yes, exactly as an interactive boot image does, and the console says why.

New recipes start with unattended deployment not allowed. Recipes that existed before this setting was added were switched on when the server was upgraded, so nothing that already deployed unattended changed behaviour; review them and turn it off where it is not wanted. A cloned recipe keeps the setting of the recipe it was cloned from.

The countdown

Even with both consents, the agent does not wipe straight away. It shows the disk it is about to erase - number, model, size, bus and serial - and counts down 30 seconds. Press any key to stop it. The deployment then halts with WIPE_ABORTED and nothing is written to the disk. If no key is pressed, the deployment carries on by itself.

Which disk is chosen

FluxDeploy never guesses which disk to wipe, in unattended mode or otherwise:

  • USB (including UAS external drives), FireWire, SD and MMC disks are never candidates, and neither is the disk the boot environment is running from.
  • If exactly one internal disk remains, it is used automatically, after the 30-second countdown.
  • If two or more remain, the deployment waits at the machine for the technician to pick one, even in unattended mode, and the deployment console shows that it is waiting. The list is ordered NVMe, then RAID/SAS, then SATA, then anything else, largest first, but nothing is pre-selected.
  • No answer within an hour, or an invalid answer, stops the deployment with AMBIGUOUS_DISK and nothing is wiped. To keep a machine with a data disk fully hands-off, detach the disk that must keep its data.

Immediately before the disk is wiped, the agent checks it again. If the disk number no longer has the same model, size and serial - because a drive was plugged in or removed in the meantime - the deployment stops with DISK_CHANGED and nothing is wiped.