From d10a2d21d848158fe8d67b2c307205d6eacbe794 Mon Sep 17 00:00:00 2001 From: Jaromir Kaspar Date: Mon, 5 Feb 2024 11:51:41 +0100 Subject: [PATCH] updated DSU/IC links --- .../Scenario.ps1 | 24 ++++------- .../Scenario.ps1 | 41 ++++--------------- Scenarios/AzSHCI and MDT/Scenario.ps1 | 20 ++------- 3 files changed, 20 insertions(+), 65 deletions(-) diff --git a/Scenarios/AzSHCI Deployment 22H2 Edition/Scenario.ps1 b/Scenarios/AzSHCI Deployment 22H2 Edition/Scenario.ps1 index 870f28b0..a8d1533b 100644 --- a/Scenarios/AzSHCI Deployment 22H2 Edition/Scenario.ps1 +++ b/Scenarios/AzSHCI Deployment 22H2 Edition/Scenario.ps1 @@ -205,6 +205,11 @@ #Reset disks (to clear spaces metadata) Invoke-Command -ComputerName $Servers -ScriptBlock { Get-PhysicalDisk -CanPool $True | Reset-PhysicalDisk + $disks=Get-Disk | Where-Object IsBoot -eq $false + $disks | Set-Disk -IsReadOnly $false + $disks | Set-Disk -IsOffline $false + $disks | Clear-Disk -RemoveData -RemoveOEM -Confirm:0 + $disks | get-disk | Set-Disk -IsOffline $true } } @@ -256,23 +261,10 @@ #region prepare DSU binaries #Download DSU #https://github.com/DellProSupportGse/Tools/blob/main/DART.ps1 - - #grab DSU links from Dell website - $URL="https://dl.dell.com/omimswac/dsu/" - $Results=Invoke-WebRequest $URL -UseDefaultCredentials - $Links=$results.Links.href | Select-Object -Skip 1 - #create PSObject from results - $DSUs=@() - foreach ($Link in $Links){ - $DSUs+=[PSCustomObject]@{ - Link = "https://dl.dell.com$Link" - Version = $link -split "_" | Select-Object -Last 2 | Select-Object -First 1 - } - } - #download latest to separate folder - $LatestDSU=$DSUs | Sort-Object Version | Select-Object -Last 1 + #download latest DSU to Downloads + $LatestDSU="https://dl.dell.com/FOLDER10889507M/1/Systems-Management_Application_RPW7K_WN64_2.0.2.3_A00.EXE" if (-not (Test-Path $DSUDownloadFolder -ErrorAction Ignore)){New-Item -Path $DSUDownloadFolder -ItemType Directory} - Start-BitsTransfer -Source $LatestDSU.Link -Destination $DSUDownloadFolder\DSU.exe + Start-BitsTransfer -Source $LatestDSU -Destination $DSUDownloadFolder\DSU.exe #upload DSU to servers $Sessions=New-PSSession -ComputerName $Servers diff --git a/Scenarios/AzSHCI and Dell Servers Update/Scenario.ps1 b/Scenarios/AzSHCI and Dell Servers Update/Scenario.ps1 index 756040e9..d90769a0 100644 --- a/Scenarios/AzSHCI and Dell Servers Update/Scenario.ps1 +++ b/Scenarios/AzSHCI and Dell Servers Update/Scenario.ps1 @@ -57,43 +57,18 @@ [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 } - #Find DSUs - $URL="https://dl.dell.com/omimswac/dsu/" - $htmlstring=$WebClient.DownloadString("$url") - $htmlobject = New-Object -Com "HTMLFile" - $htmlobject.IHTMLDocument2_write($htmlstring) - $Links=$htmlobject.links | Select-Object -Skip 1 - $DSUs=@() - foreach ($Link in $Links){ - $DSUs+=[PSCustomObject]@{ - Link = "https://dl.dell.com/$($link.pathname)" - Version = [Version]($link.pathname -split "_" | Select-Object -Last 2 | Select-Object -First 1) - } - } #download latest DSU - $LatestDSU=$DSUs | Sort-Object Version | Select-Object -Last 1 - $WebClient.DownloadFile($LatestDSU.Link,"$DellToolsDownloadFolder\DSU.exe") + #DSU Binary: https://www.dell.com/support/kbdoc/en-us/000130590/dell-emc-system-update-dsu + #DSU Docs: https://www.dell.com/support/home/en-us/product-support/product/system-update/docs + #omimswac link for latest DSU is in user manual https://www.dell.com/support/home/en-us/product-support/product/openmanage-integration-microsoft-windows-admin-center/docs + $LatestDSU="https://downloads.dell.com/omimswac/dsu/Systems-Management_Application_GG4YM_WN64_2.0.2.2_A00.EXE" + $WebClient.DownloadFile($LatestDSU,"$DellToolsDownloadFolder\DSU.exe") #grab IC (inventory collection tool. Required for offline patching) if ($Offline){ - #Find ICs - $URL="https://dl.dell.com/omimswac/ic/" - $htmlstring=$WebClient.DownloadString("$url") - $htmlobject = New-Object -Com "HTMLFile" - $htmlobject.IHTMLDocument2_write($htmlstring) - $Links=$htmlobject.links | Select-Object -Skip 1 - - $ICs=@() - foreach ($Link in $Links){ - $ICs+=[PSCustomObject]@{ - Link = "https://dl.dell.com/$($link.pathname)" - Version = [Version](($link.pathname -split "_" | Select-Object -Last 5 | Select-Object -First 4) -join ".") - } - } - - #download latest - $LatestIC=$ICs | Sort-Object Version | Select-Object -Last 1 - $WebClient.DownloadFile($LatestIC.Link,"$DellToolsDownloadFolder\IC.exe") + #download latest IC (link is in latest OMIMSWAC manual) + $LatestIC="https://downloads.dell.com/omimswac/ic/invcol_T4M1J_WIN64_23_03_00_44_A00.exe" + $WebClient.DownloadFile($LatestIC,"$DellToolsDownloadFolder\IC.exe") } #grab Dell Azure Stack HCI driver catalog https://downloads.dell.com/catalog/ASHCI-Catalog.xml.gz diff --git a/Scenarios/AzSHCI and MDT/Scenario.ps1 b/Scenarios/AzSHCI and MDT/Scenario.ps1 index cc4200b4..f7695ad7 100644 --- a/Scenarios/AzSHCI and MDT/Scenario.ps1 +++ b/Scenarios/AzSHCI and MDT/Scenario.ps1 @@ -1062,30 +1062,18 @@ Invoke-Command -ComputerName $MDTServer -ScriptBlock {Set-Content -Path $using:D #Download DSU #https://github.com/DellProSupportGse/Tools/blob/main/DART.ps1 -#grab DSU links from Dell website -$URL="https://dl.dell.com/omimswac/dsu/" -$Results=Invoke-WebRequest $URL -UseDefaultCredentials -$Links=$results.Links.href | Select-Object -Skip 1 -#create PSObject from results -$DSUs=@() -foreach ($Link in $Links){ - $DSUs+=[PSCustomObject]@{ - Link = "https://dl.dell.com$Link" - Version = $link -split "_" | Select-Object -Last 2 | Select-Object -First 1 - } -} -#download latest to separate folder -$LatestDSU=$DSUs | Sort-Object Version | Select-Object -Last 1 +#download latest DSU to separate folder (link is in latest OMIMSWAC user guide https://www.dell.com/support/home/en-us/product-support/product/openmanage-integration-microsoft-windows-admin-center/docs) +$LatestDSU="https://downloads.dell.com/omimswac/dsu/Systems-Management_Application_GG4YM_WN64_2.0.2.2_A00.EXE" $Folder="$env:USERPROFILE\Downloads\DSU" if (-not (Test-Path $Folder)){New-Item -Path $Folder -ItemType Directory} -Start-BitsTransfer -Source $LatestDSU.Link -Destination $Folder\DSU.exe +Start-BitsTransfer -Source $LatestDSU -Destination $Folder\DSU.exe #add DSU as application to MDT Import-Module "C:\Program Files\Microsoft Deployment Toolkit\bin\MicrosoftDeploymentToolkit.psd1" if (-not(Get-PSDrive -Name ds001 -ErrorAction Ignore)){ New-PSDrive -Name "DS001" -PSProvider "MDTProvider" -Root "\\$MDTServer\DeploymentShare$" -Description "MDT Deployment Share" -NetworkPath "\\$MDTServer\DeploymentShare$" -Verbose | add-MDTPersistentDrive -Verbose } -$AppName="Dell DSU $($LatestDSU.Version)" +$AppName="Dell DSU 2.0.2.2" Import-MDTApplication -path "DS001:\Applications" -enable "True" -Name $AppName -ShortName "DSU" -Version $LatestDSU.Version -Publisher "Dell" -Language "" -CommandLine "DSU.exe /silent" -WorkingDirectory ".\Applications\$AppName" -ApplicationSourcePath $Folder -DestinationFolder $AppName -Verbose #grap package ID for role config $DSUID=(Get-ChildItem -Path DS001:\Applications | Where-Object Name -eq $AppName).GUID