If you’ve ever worked with HP ProLiant servers before, you’re probably familiar with the HP Service Pack for ProLiant (HP SPP). As I’ve only worked with Dell servers before (it’s kind of fun that I’ve not come in contact with HP servers managed with ConfigMgr up until now), I’m used to use the DRM (Dell Repository Manager).

Overview

  • Get your hands on the HP SPP
  • Cleanup HP SPP
  • Copy HP SPP to the Content Library
  • Create a wrapper script
  • Create a Package
  • Add HP SPP to a Task Sequence

Get your hands on the HP SPP

As of writing this post, the latest version of HP SPP is 2014.02 and can be downloaded from the link below.

https://h20392.www2.hp.com/portal/swdepot/displayProductInfo.do?productNumber=spp_2014.02.0

You’d need to login to be able to download the ISO. If you don’t have an account yet, it’s a pretty fast sign-up process.

Cleanup HP SPP

As in this post I’ll be focusing on using the HP SPP for Windows Server deployments, and for that we don’t need all the linux-based files that comes along as well. Since the servers that will be deployed with ConfigMgr needs to download all the content in the package that we’ll create later, it would be wise to keep the data to a minimum. Once you have downloaded the ISO, mount it and copy the folder below and all of its contents to a folder of your liking. I’ll be copying the files to G:\HP.

<driveletter>\hp\swpackages

Open an elevated PowerShell console and run the following command:

Get-ChildItem -Path G:\HP\swpackages -Recurse -Include *.rpm, *.scexe | Remove-Item -Force

When you run the command above, you’ll remove all of the unnecessary files that we won’t be needing when deploying the HP SPP for Windows servers. The orginal size of 3GB+ has now been decreased to about 1.2GB instead. It’s still a lot of data, and perhaps there could be some more cleaning done, but I’ll leave that up to each of you to decide on that.

Copy HP SPP to the Content Library

Now that we have the files we need, it’s time to move them to the Content Library on your Primary Site server (or wherever your Content Library is located). In my lab environment, I’ll be using the following location for the HP SPP files:

\\CM01\ContentLibrary$\Packages\HP\HPSPP\2014.02

Move all of the contents of G:\HP\swpackages to the location in the Content Library.

89_1

Create a wrapper script

Since HP has decided to go their own way when it comes to exit codes, we need to have a wrapper interpreting the return codes from the installation. This can be accomplished by using the following script:

Dim sSetupCommand
Dim sExecute
Dim sExitCode

sSetupCommand = "hpsum.bat /use_wmi /use_latest /logdir C:\HPSPPLogs /silent"
Set WshShell = WScript.CreateObject("WScript.Shell")
sExecute = WshShell.Run(sSetupCommand,1,True)

If (sExecute = 0) then
    sExitCode = 0
ElseIf (sExecute = 1) then 
    sExitCode = 0
ElseIf (sExecute = 2) then 
    sExitCode = 0
ElseIf (sExecute = 3) then 
    sExitCode = 0
ElseIf (sExecute = 4) then 
    sExitCode = 0
Elseif (sExecute = 5) then 
    sExitCode = 0
Elseif (sExecute = 3010) then 
    sExitCode = 0
Else
    sExitCode = 1
End If

WScript.Quit sExitCode

If you take a look at the script, we have a variable called sSetupCommand that contains the actual setup command that will be executed. Here you’re able to specify the command line parameters that are supported by the HP SPP. I would encourage you to look them up so that you use the correct ones that suites your environment.

Save this script as InstallHPSPP.vbs and copy it to the same location that you copied the HP SPP files in your Content Library.

Create a Package

I’ll assume that you know how to create a Package in ConfigMgr, so that process will not be described here in this post. What’s important though when you create the package is to specify the content source and not to create a Program. You could of course create a Program if you wish, but I’ll be leveraging the Run Command Line step in the task sequence instead of the Install Package. Also, remember to distribute the package to your Distribution Points.

89_2

Add HP SPP to a Task Sequence

When editing the task sequence, it’s important that we add the Run Command Line step during the Online phase. That means that we have to add it after the Setup Windows and Configuration Manager step at some point. Here in my lab environment I’ve edited my Windows Server 2012 R2 Standard – Install task sequence and added a Run Command Line step with the following command line:

cscript.exe InstallHPSPP.vbs

In addition to that I’ve also selected to use the package that we created earlier.

89_4

Now when you go and deploy this task sequence to one of your servers, the HP SPP installation will take care of all your driver installations and additional software that it finds suitable for your server.

Nickolaj Andersen
Principal Consultant and Enterprise Mobility MVP since 2016. Nickolaj has been in the IT industry for the past 10 years specializing in Enterprise Mobility and Security, Windows devices and deployments including automation. Currently working for TrueSec as a Principal Consultant. Awarded as PowerShell Hero in 2015 by the community for his script and tools contributions. Creator of ConfigMgr Prerequisites Tool, ConfigMgr OSD FrontEnd, ConfigMgr WebService to name a few. Frequent speaker at conferences and user groups.

(1293)

comments
  • Steven Holder
    Posted at 12:03 March 19, 2015
    Steven Holder
    Reply
    Author

    Hi Nickolaj,

    Great article, I used this with our HP DL380p Gen8 WS 2012 R2 build and worked just great.Will this also work HP DL380p Gen8 WS 2008 R2 build ?

    Thanks

    Steve

    • Nickolaj
      Posted at 12:10 March 20, 2015
      Nickolaj
      Reply
      Author

      Hi Steven,

      Yes it will work. One of my customers are running this on Windows Server 2008 SP2 all the way up to Windows Server 2012 R2 on a variety of HP server models.

      Regards,
      Nickolaj

  • Tim Telen
    Posted at 15:48 April 1, 2015
    Tim Telen
    Reply
    Author

    Is it possible the sSetupCommand = “hpsum.bat /use_wmi /use_latest /logdir C:\HPSPPLogs /silent” no longer works?

    Error: cannot parse the option: /use_wmi

  • Damon Dixon
    Posted at 01:58 July 30, 2015
    Damon Dixon
    Reply
    Author

    Will the wrapper script also work in a MDT 2013 task sequence?

  • yaro
    Posted at 11:25 January 13, 2016
    yaro
    Reply
    Author

    Same question for MDT here. I tested with newer SSP and no luck.

  • raj
    Posted at 21:37 June 10, 2016
    raj
    Reply
    Author

    I tried the above with HP SPP 2016 for Gen 8 DL380P.The task sequence goes in loop copying the files to the client.
    Any pointers?

  • James
    Posted at 14:02 October 11, 2016
    James
    Reply
    Author

    Any suggestions on using this with MDT 2013?

  • sebastian
    Posted at 13:30 March 30, 2017
    sebastian
    Reply
    Author

    i wrote a CMD file
    hpsum.bat /use_wmi /force /use_latest /logdir %windir%\temp /silent
    i used it with sccm 1610 in OSD with 871790_001_spp-2016.10.0-SPP2016100.2016_1015.191.iso

  • fredrik
    Posted at 11:16 September 27, 2017
    fredrik
    Reply
    Author

    This will only work if you task sequence is set to download all under deployments.
    You can´t have download when needed

  • Leave a Reply