Your first deployment
Three steps. One normal deployment.
Start with two built-in apps on an online x64 device.
-AllowPrerelease to install the preview.Install from the PowerShell Gallery.
Let OSDCloud apply Windows first. Run this before the first Windows boot, with internet access and PowerShellGet 1.6 or later available.
Install-Module OSDStage -Repository PSGallery -AllowPrerelease -Force -ErrorAction Stop
Import-Module OSDStage -Force -ErrorAction StopNo module copy on a USB drive is needed. The optional OSDCloud-labeled USB cache is detected automatically.
Choose your apps.
Add only what this device needs.
Add-OSDStageGoogleChromeEnterprise -Architecture x64
Add-OSDStageAdobeAcrobatUnified -Architecture x64These commands stage the selection. Installation happens during the next step.
Check the queue. Continue your deployment.
Test-OSDStageDeployment -ThrowOnFailure |
Format-List Valid, OfflineReady, NetworkRequired, PackageCountExpect Valid: True and PackageCount: 2 on a fresh test. OfflineReady: False is normal when content still needs to download.
Use your normal deployment restart. Keep the PC online until OOBE appears. If you use a USB cache, leave it connected. SetupComplete downloads the content as needed and installs your selections in order.
Your deployment, recorded
Open your delivery report.
After SetupComplete, open %ProgramData%\OSDStage\Results\DeliveryReport.html. Review app results, component details and attention items. The matching JSON is there too.
Where can I see the result?
On the deployed Windows device, after SetupComplete:
$result = Get-Content "$env:ProgramData\OSDStage\Results\Latest.json" -Raw |
ConvertFrom-Json
$result | Format-List Status, SuccessfulPackageCount, FailedPackageCount
$result.Packages | Format-Table Id, Status, ExitCodeReaching OOBE alone does not prove every package succeeded.