Public/New-OSDBuilderContentPack.ps1
<#
.SYNOPSIS Creates an OSDBuilder ContentPack .DESCRIPTION Creates or Updates an OSDBuilder ContentPack in the ContentPack directory .LINK https://osdbuilder.osdeploy.com/module/functions/new-osdbuildercontentpack #> function New-OSDBuilderContentPack { [CmdletBinding()] Param ( #Name of the ContentPack to create [Parameter(Position = 0, Mandatory = $true)] [ValidateNotNullOrEmpty()] [string]$Name ) $ContentDirectories = @( "Media\ALL" "Media\x64" #"Media\x86" "OSDrivers\ALL" "OSDrivers\x64" #"OSDrivers\x86" "OSExtraFiles\ALL" "OSExtraFiles\ALL Subdirs" "OSExtraFiles\x64" "OSExtraFiles\x64 Subdirs" #"OSExtraFiles\x86" #"OSExtraFiles\x86 Subdirs" "OSPoshMods\ProgamFiles" "OSPoshMods\System" "OSRegistry\ALL" "OSRegistry\x64" #"OSRegistry\x86" "OSScripts\ALL" "OSScripts\x64" #"OSScripts\x86" "OSStartLayout\ALL" "OSStartLayout\x64" #"OSStartLayout\x86" "PEADK\1809 x64" #"PEADK\1809 x64 WinPE" #"PEADK\1809 x64 WinRE" #"PEADK\1809 x64 WinSE" #"PEADK\1809 x86" #"PEADK\1809 x86 WinPE" #"PEADK\1809 x86 WinRE" #"PEADK\1809 x86 WinSE" "PEADK\1903 x64" #"PEADK\1903 x64 WinPE" #"PEADK\1903 x64 WinRE" #"PEADK\1903 x64 WinSE" #"PEADK\1903 x86" #"PEADK\1903 x86 WinPE" #"PEADK\1903 x86 WinRE" #"PEADK\1903 x86 WinSE" "PEADK\1909 x64" #"PEADK\1909 x64 WinPE" #"PEADK\1909 x64 WinRE" #"PEADK\1909 x64 WinSE" #"PEADK\1909 x86" #"PEADK\1909 x86 WinPE" #"PEADK\1909 x86 WinRE" #"PEADK\1909 x86 WinSE" "PEDrivers\ALL" "PEDrivers\x64" #"PEDrivers\x86" "PEExtraFiles\ALL" "PEExtraFiles\ALL Subdirs" "PEExtraFiles\x64" "PEExtraFiles\x64 Subdirs" #"PEExtraFiles\x86" #"PEExtraFiles\x86 Subdirs" "PEPoshMods\ProgamFiles" "PEPoshMods\System" "PERegistry\ALL" "PERegistry\x64" #"PERegistry\x86" "PEScripts\ALL" "PEScripts\x64" #"PEScripts\x86" ) foreach ($ContentDirectory in $ContentDirectories) { if (!(Test-Path "$GetOSDBuilderPathContentPacks\$Name\$ContentDirectory")) { New-Item "$GetOSDBuilderPathContentPacks\$Name\$ContentDirectory" -ItemType Directory -Force | Out-Null } } } |