Shopfloor: auto-register 9999-placeholder machine number prompt
If a bay is imaged with the 9999 placeholder (tech leaves the WinPE prompt blank or types 9999), the lockdown+auto-login chain ends up at the ShopFloor user with no real machine number. We had Check-MachineNumber.ps1 written - InputBox + Update-MachineNumber pulls per-machine NTLARS .reg + udc_settings_<N>.json from the SFLD share - but it only got registered when a tech manually ran Configure-PC + toggled item 6. Fresh 9999 bays never got the prompt, leaving the bay stuck on placeholder values until someone noticed. New Register-CheckMachineNumberTask.ps1 auto-registers the logon task at imaging time. Gated on C:\Enrollment\machine-number.txt == 9999; bays imaged with a real number never get the task (and any stale task from a prior 9999-imaging on the same disk is cleaned up). Wired into Run-ShopfloorSetup.ps1 right after the S: drive logon mapper register. Skipped for self-contained types (display kiosks have no machine number). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -360,6 +360,26 @@ if ($noEnforceTypes -contains $pcType) {
|
||||
Write-Host "Register-MapSfldShare.ps1 not found (optional) - skipping"
|
||||
}
|
||||
|
||||
# --- Check Machine Number logon prompt ---
|
||||
# Auto-register the "Check Machine Number" scheduled task. Bays imaged with
|
||||
# the 9999 placeholder will prompt the first ShopFloor end-user logon to
|
||||
# enter the real machine number; on success Update-MachineNumber.ps1 pulls
|
||||
# the per-machine NTLARS .reg + UDC settings JSON + UDC data backup from
|
||||
# SFLD and the task self-unregisters. Self-disables once the number is
|
||||
# real, so safe to always register here.
|
||||
# Skipped for self-contained types (Display) that have no machine number.
|
||||
$registerCheckMN = Join-Path $setupDir 'Shopfloor\Register-CheckMachineNumberTask.ps1'
|
||||
if ($noEnforceTypes -contains $pcType) {
|
||||
Write-Host ""
|
||||
Write-Host "=== Skipping Check Machine Number task ($pcType has no machine number) ==="
|
||||
} elseif (Test-Path -LiteralPath $registerCheckMN) {
|
||||
Write-Host ""
|
||||
Write-Host "=== Registering Check Machine Number logon task ==="
|
||||
try { & $registerCheckMN } catch { Write-Warning "Check-MachineNumber registration failed: $_" }
|
||||
} else {
|
||||
Write-Host "Register-CheckMachineNumberTask.ps1 not found (optional) - skipping"
|
||||
}
|
||||
|
||||
# --- Run enrollment (PPKG install) ---
|
||||
# Enrollment is the LAST thing we do. Install-ProvisioningPackage triggers
|
||||
# an immediate reboot -- everything after this call is unlikely to execute.
|
||||
|
||||
Reference in New Issue
Block a user