The easiest way to convert OSDDriver Packages to CM Packages is to create a script. Since I am separating my NvidiaPack, my $OSDDrivers
path is modified
Copy $CMLibrary = '\\SERVER\SHARE\OSDDrivers'
$CMSiteCode = 'XXX:'
$CMBin = "C:\Program Files (x86)\Microsoft Configuration Manager\AdminConsole\bin"
$Version = '19.8.28'
$Manufacturer = 'OSDDrivers'
#Get-OSDDrivers
$OSDDrivers = Get-ChildItem "$CMLibrary","$CMLibrary\NvidiaPack 10.0 x64" -Directory | Where {$_.Name -ne 'NvidiaPack 10.0 x64'} | Select Name, FullName
#Import Module
Import-Module "$CMBin\ConfigurationManager.psd1"
CD $CMSiteCode
#Create OSDDriver Packages
foreach ($OSDDriver in $OSDDrivers) {
$Name = $OSDDriver.Name
$Path = $OSDDriver.FullName
Write-Host "Name: $Name" -ForegroundColor Green
#Write-Verbose "Path: $Path" -Verbose
Write-Verbose "Version: $Version" -Verbose
Write-Verbose "Manufacturer: $Manufacturer" -Verbose
#Create Package
New-CMPackage -Name $Name -Path $Path -Manufacturer $Manufacturer -Version $Version | Out-Null
#Set Package Properties
Set-CMPackage -Name $Name -EnableBinaryDeltaReplication $True -PersistContentInCache $True | Out-Null
#Create a new Program
New-CMProgram -PackageName $Name -StandardProgramName 'Deploy-OSDDrivers' -CommandLine 'Deploy-OSDDrivers.ps1' -ProgramRunType WhetherOrNotUserIsLoggedOn -RunMode RunWithAdministrativeRights -UserInteraction $false -DiskSpaceRequirement 500 -DiskSpaceUnit MB | Out-Null
#Create a program for Windows 7 to Windows 10 Upgrades
New-CMProgram -PackageName $Name -StandardProgramName 'Deploy-OSDDrivers Win7Upgrade' -CommandLine 'Deploy-OSDDrivers10.0x64.ps1' -ProgramRunType WhetherOrNotUserIsLoggedOn -RunMode RunWithAdministrativeRights -UserInteraction $false -DiskSpaceRequirement 500 -DiskSpaceUnit MB | Out-Null
}
Once the script is complete, I can move my Packages to a subfolder for easier grouping