Can a Microsoft PowerShell script file be used as a installation, uninstallation, configuration or activation procedure in an ITCM software delivery package?

book

Article ID: 50972

calendar_today

Updated On:

Products

CA Client Automation - IT Client Manager CA Client Automation CA Client Automation - Software Delivery

Issue/Introduction

Based on the fact that the Software Delivery agent is able to run DOS batch script files and dmscript script files as embedded procedures in a Software Delivery package, we may also think a script file written in Microsoft PowerShell can also be used in a Software Delivery package procedure.

Environment

Client Automation - All Versions.

Resolution

Unfortunately, the Software Delivery Agent does not allow the native Microsoft PowerShell script execution, so it is not supported. In fact, when a .PS1 file (the default extension for a Microsoft PowerShell script) is provided as installation/unistallation/configuration/activation procedure an executable file type is searched and thus not found.

However, a Microsoft PowerShell script can be successfully run if invoked within a DOS batch job (.BAT or .CMD files) as if it was invoked from the command line prompt window.

For example, a PowerShell script named MyPSScript.PS1 can be executed as a Software Delivery package procedure by creating a .CMD file (for example INSTALL.CMD) with the following content:

PowerShell ./MyPSScript.PS1  %1  %2  %3  %4  %5

Where the %n added at the end of the line represents the eventual parameters the PowerShell script may receive, if any.

Then, just use the INSTALL.CMD file as embedded file for the SD package procedure, as done with any other .CMD or .BAT file.

Additional Information

For further information, please review the Microsoft PowerShell documentation on how to run PowerShell scripts from the command line.