01-10-2024 01:26 AM - edited 01-10-2024 01:40 AM
Hi Community Folks
In the light of the upcoming release of Provisioning Packages for Windows (see the last IT Hours here), I took a spin on several tools again to make use of the PPKG within the Imaging process of Windows to move towards a Zero Touch Installation (ZTI), or at least a very Light Touch Installation (LTI) of Windows 10/11 (whatever you need).
Get your PPKG this way:
I looked again at the following tools:
In this table I made a quick overview and comparison for you guys:
The only tools which cater for the 'native' consumption of a PPKG so far are OSDCloud, NTLite and Windows Image Maker. In all other cases you need to employ PowerShell Scripts during the deployment to get them installed post-setup during the OOBE-phase.
OSDCloud
My personal favourite is OSDCloud as it's really easy to set up, lightweight, and very versatile.
It also comes with the injection of drivers for all major vendors like Dell, Lenovo, HP and other for WinPE so that your PreBoot-Environment (for imaging) is capable of having a network connection.
OSDCloud is the only solution here which allows you to work with a Thin Image - which means that you don't carry the Windows Image (WIM) on your USB/ISO for the installation, instead it's just a lightweight PE-Environment and the Windows Image is downloaded during the process.
If you want to, you can add a WIM-file and make it a Thick Image. More details here.
How to integrate the Provisioning Package?
It's very straight forward. As outlined here, you need to place the PPKG into the respective folders.
#Content will be on the ISO or USB Boot Partition
#Ideal for Virtual Machine testing
$(Get-OSDCloudWorkspace)\Media\OSDCloud\Automate\Provisioning
#Content will be on the USB Drive
#Ideal for Physical Machine testing
$(Get-OSDCloudWorkspace)\OSDCloud\Automate\Provisioning
During the deployment you can observe how it's picked up and deployed.
Another pretty cool feature is the option to configure the deployment via an URL for flexibility.
What does that mean? You can edit the PE-Image in a way that the startup configuration will be picked up from a public URL with a file that carries your parameters.
The advantage here is that you can modify the startup behaviour without re-generating the images over and over.
How it works is described here.
I just use the -ZTI parameter then so that I don't have to touch the installation until the first login appears.
Once the deployment is done, you can login using a JumpCloud-Account via Self-Service Account Provisioning or you start assigning users via the Admin Console.
NTLite
NTLite is great when you want to get a lean and sanitised (de-bloated) Windows Image as it has tons of options to remove/modify components, features and services.
You're also able to add updates and feature packages or drivers.
As you can see in the screenshots below, you have options to control the OOBE phase (Post Setup) as well as configuring the Unattended-File. Therefore you can either add your initial user and some configs within the PPKG or within the Unattended-File - that's really up to you.
How to add the Provisioning Package?
I opted here for the option to download another script which then downloads the PPKG from S3 and applies it post setup.
# Define the presigned URL of the .ppkg file
$ppkgUrl = "https://YOUR_CUSTOM_URL/jumpcloud_ppkg.ppkg"
# Define the local path to save the .ppkg file
$localPpkgPath = "C:\Windows\Temp\JumpCloud.ppkg"
# Download the .ppkg file
Invoke-WebRequest -Uri $ppkgUrl -OutFile $localPpkgPath
# Apply the PPKG
Install-ProvisioningPackage -Path $localPpkgPath -QuietInstall -ForceInstall -Verbose
Write-Host "Installation successful."
# Optionally, remove the downloaded file
Remove-Item -Path $localPpkgPath
You can add the PPKG directly via NTLite and apply it via the Command Line by using "Install-ProvisioningPackage". (to be tested)
How about the others like Dell Image Assist, MDT etc.?
Dell Image Assist and MDT need to rely on scripts as well and Windows Image Maker can process a PPKG directly when placed in the correct folder (similar to OSDCloud)
Happy Imaging
-Juergen
New to the site? Take a look at these additional resources:
Ready to join us? You can register here.