Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ##################################################
- # Variables that need to be set for script to work
- #Path to RACADM Executable
- $racadmpath = "C:Program FilesDellSysMgtrac5"
- # Username and Password for DRAC Account with configure access. Suggested that this
- # be set in the script you which to use with, or configured as script command line
- # arguments for security.
- $username = *****
- $pass = *******
- $ipchbld = Import-Csv 'ipCHBLD.csv'
- #####################################################################################
- $MyCollection = @()
- foreach ($ip in $ipchbld) {
- $arrayobj = @()
- $object = New-Object PSObject
- $object | add-member -MemberType NoteProperty -Name "Chassis Slot" -value $ip.Chassis_Slot
- $object | add-member -MemberType NoteProperty -Name "DRAC IP" -value $ip.DRAC_IP
- $output = & $racadmpathracadm.exe -r $ip.DRAC_IP -u $username -p $pass getchassiname | select -Skip 8
- foreach ($line in $output) {
- if ($line -ne "") {
- $line = $line -replace 's+', ','
- $line = $line.Split(",")
- $object | add-member -MemberType NoteProperty -Name "Chassis Name" -value $line[0]
- }
- }
- $output = & $racadmpathracadm.exe -r $ip.DRAC_IP -u $username -p $pass getsvctag | select -Skip 8
- foreach ($line in $output) {
- if ($line -ne "" -And $line -match "Chassis") {
- $line = $line -replace 's+', ','
- $line = $line.Split(",")
- $object | add-member -MemberType NoteProperty -Name "Chassis Service Tag" -value $line[1]
- }
- }
- $output = & $racadmpathracadm.exe -r $ip.DRAC_IP -u $username -p $pass getversion -m cmc-1 | select -Skip 8
- foreach ($line in $output) {
- if ($line -ne "") {
- $line = $line -replace 's+', ','
- $line = $line.Split(",")
- $object | add-member -MemberType NoteProperty -Name "CMC" -value $line[0]
- $object | add-member -MemberType NoteProperty -Name "CMC Version" -value $line[1]
- }
- }
- $output = & $racadmpathracadm.exe -r $ip.DRAC_IP -u $username -p $pass getversion -m cmc-2 | select -Skip 8
- foreach ($line in $output) {
- if ($line -ne "") {
- $line = $line -replace 's+', ','
- $line = $line.Split(",")
- $object | add-member -MemberType NoteProperty -Name "CMC" -value $line[0]
- $object | add-member -MemberType NoteProperty -Name "CMC Version" -value $line[1]
- }
- }
- $output = & $racadmpathracadm.exe -r $ip.DRAC_IP -u $username -p $pass getslotname | select -Skip 8
- foreach ($line in $output) {
- if ($line -ne "") {
- $line = $line -replace 's+', ','
- $line = $line.Split(",")
- $object | add-member -MemberType NoteProperty -Name "Blade Slot" -value $line[1]
- $object | add-member -MemberType NoteProperty -Name "Blade Name" -value $line[2]
- }
- }
- $output = & $racadmpathracadm.exe -r $ip.DRAC_IP -u $username -p $pass getversion -c | select -Skip 8
- foreach ($line in $output) {
- if ($line -ne "" -ANd $line -match "server") {
- $line = $line -replace 's+', ','
- $line = $line.Split(",")
- $object | add-member -MemberType NoteProperty -Name "Blade Type" -value $line[2]
- }
- }
- $output = & $racadmpathracadm.exe -r $ip.DRAC_IP -u $username -p $pass getsvctag | select -Skip 8
- foreach ($line in $output) {
- if ($line -ne "" -And $line -match "Server") {
- $line = $line -replace 's+', ','
- $line = $line.Split(",")
- $object | add-member -MemberType NoteProperty -Name "Blade Service Tag" -value $line[1]
- }
- }
- $output = & $racadmpathracadm.exe -r $ip.DRAC_IP -u $username -p $pass getversion -l -f bios | select -Skip 8
- foreach ($line in $output) {
- if ($line -ne "") {
- $line = $line -replace 's+', ','
- $line = $line.Split(",")
- $object | add-member -MemberType NoteProperty -Name "BIOS" -value $line[2]
- }
- }
- $output = & $racadmpathracadm.exe -r $ip.DRAC_IP -u $username -p $pass getversion -l -f idrac | select -Skip 8
- foreach ($line in $output) {
- if ($line -ne "") {
- $line = $line -replace 's+', ','
- $line = $line.Split(",")
- $object | add-member -MemberType NoteProperty -Name "iDRAC" -value $line[2]
- }
- }
- $output = & $racadmpathracadm.exe -r $ip.DRAC_IP -u $username -p $pass getversion -l -f usc | select -Skip 8
- foreach ($line in $output) {
- if ($line -ne "") {
- $line = $line -replace 's+', ','
- $line = $line.Split(",")
- $object | add-member -MemberType NoteProperty -Name "Unified Server Configurator" -value $line[2]
- }
- }
- $output = & $racadmpathracadm.exe -r $ip.DRAC_IP -u $username -p $pass getversion -l -f diag | select -Skip 8
- foreach ($line in $output) {
- if ($line -ne "") {
- $line = $line -replace 's+', ','
- $line = $line.Split(",")
- $object | add-member -MemberType NoteProperty -Name "32-bit Diagnostics" -value $line[2]
- }
- }
- $output = & $racadmpathracadm.exe -r $ip.DRAC_IP -u $username -p $pass getversion -l -f drivers | select -Skip 8
- foreach ($line in $output) {
- if ($line -ne "") {
- $line = $line -replace 's+', ','
- $line = $line.Split(",")
- $object | add-member -MemberType NoteProperty -Name "OS Driver Package" -value $line[3]
- }
- }
- $output = & $racadmpathracadm.exe -r $ip.DRAC_IP -u $username -p $pass getversion -l -f nic | select -Skip 8
- foreach ($line in $output) {
- if ($line -ne "" -ANd $line -match "server") {
- $line = $line -replace 's+', ','
- $line = $line.Split(",")
- $object | add-member -MemberType NoteProperty -Name "NIC Type" -value $line[1]
- $object | add-member -MemberType NoteProperty -Name "NIC FW Version" -value $line[9]
- }
- }
- $output = & $racadmpathracadm.exe -r $ip.DRAC_IP -u $username -p $pass getversion -l -f raid | select -Skip 8
- foreach ($line in $output) {
- if ($line -ne "" -ANd $line -match "Controller 0") {
- $line = $line -replace 's+', ','
- $line = $line.Split(",")
- $object | add-member -MemberType NoteProperty -Name "PERC H700 Modular" -value $line[6]
- }
- }
- $output = & $racadmpathracadm.exe -r $ip.DRAC_IP -u $username -p $pass getversion -c | select -Skip 8
- foreach ($line in $output) {
- if ($line -ne "" -ANd $line -match "server") {
- $line = $line -replace 's+', ','
- $line = $line.Split(",")
- $object | add-member -MemberType NoteProperty -Name "CPLD Version" -value $line[1]
- }
- }
- $output = & $racadmpathracadm.exe -r $ip.DRAC_IP -u $username -p $pass getkvminfo | select -Skip 8
- foreach ($line in $output) {
- if ($line -ne "") {
- $line = $line -replace 's+', ','
- $line = $line.Split(",")
- $object | add-member -MemberType NoteProperty -Name "iKVM FW Version" -value $line[5]
- }
- }
- $arrayobj += $object
- }
- $MyCollection += $arrayobj
- $MyCollection | Export-Csv "C:FWReportCHBLD.csv" -UseCulture -NoTypeInformation
- $output = & $racadmpathracadm.exe -r $ip.DRAC_IP -u $username -p $pass getchassiname | select -Skip 8
- foreach ($line in $output) {
- if ($line -ne "") {
- $line = $line -split 's+'
- $object | add-member -MemberType NoteProperty -Name "Chassis Name" -value $line[0]
- break
- }
- }
- $prop = 'ChassisName'
- if ($object.psobject.properties[$prop]) {
- $object.$prop += $line[0]
- }
- else {
- $object | add-member -MemberType NoteProperty -Name $prop -value $line[0]
- }
- $MyCollection = @()
- foreach ($ip in $ipchbld) {
- $object = New-Object PSObject -Property @{
- ChassisSlot=$ip.Chassis_Slot
- ChassisIP=$ip.DRAC_IP
- ChassisName=''
- ChassisSvcTag=@('')
- CMC=@('')
- CMCVersion=@('')}
- & $racadmpathracadm.exe -r $ip.DRAC_IP -u $username -p $pass getchassisname |
- Select -Skip 8 | Where {$_} |
- Foreach {$object.ChassisName = ($_ -replace 's+',',' -split ',')[0]}
- & $racadmpathracadm.exe -r $ip.DRAC_IP -u $username -p $pass getsvctag |
- Select -Skip 8 | Where {$_ -match 'Chassis'} |
- Foreach {$object.ChassisSvcTag += ($_ -replace 's+',',' -split ',')[1]}
- & $racadmpathracadm.exe -r $ip.DRAC_IP -u $username -p $pass getversion |
- Select -Skip 60 | Where {$_} |
- Foreach {$object.CMC += ($_ -replace 's+',',' -split ',')[0]}
- & $racadmpathracadm.exe -r $ip.DRAC_IP -u $username -p $pass getversion |
- Select -Skip 60 | Where {$_} |
- Foreach {$object.CMCVersion += ($_ -replace 's+',',' -split ',')[1]}
- $MyCollection += $object
- }
- $MyCollection
- $MyCollection | Export-Csv "C:UsersFWReportCHBLD.csv" -UseCulture -NoTypeInformation
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement