Here is an example of a PowerShell script that leverages the Standalone IMC PowerTool to connect to remote IMCs for mass firmware updates of C and E series. IMC PowerTool is very powerful and this is really beneficial as we have been discussing firmware updating from UCS Director leveraging the PowerShell agent.
Cisco UCS C-Series PowerTool, Release 1.1.1, includes the following key features:
§ Support for E-series CIMC release 2.2(1) and C-Series CIMC release 1.5(4) (It contains 350+ cmdlets to manage every aspect of the Cisco Integrated Management Controller)
§ ConvertTo-ImcCmdlet – A unique and powerful cmdlet to which user can pipe the output of a Get cmdlet and get the configuration cmdlets to re-create the same object hierarchy
§ Enhanced Start-ImcKvmSession cmdlet to handle translated addresses in the case of E-series
§ Transaction support enhancement
The cmdlet used for firmware updates is the Set-ImcHuuFirmwareUpdater cmdlet (for Huu firmware updating, same is used in attached script file.)
Set-ImcHuuFirmwareUpdater -AdminState <string> -MapType <string> -RemoteIp <string> -RemoteCredential <PSCredential> -RemoteShare <string> [-StopOnError <string>] [-TimeOut <uint>] -UpdateComponent <string>
[-VerifyUpdate <string>] [-Force] [-Imc <ImcHandle>] [<CommonParameters>]
$user = "<username>"
$password = "<password>" | ConvertTo-SecureString -AsPlainText -Force
$cred = New-Object System.Management.Automation.PSCredential($user,$password)
Set-ImcHuuFirmwareUpdater -AdminState trigger -MapType nfs -RemoteIp 10.105.219.83 -RemoteCredential $cred -RemoteShare "/huuIso/ucs-c2x-huu-18.104.22.168.iso" -StopOnError yes -TimeOut 60 -UpdateComponent All -VerifyUpdate no -force –Xml
Attached file has the powershell scripts and tool.