Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Info
titleUpdate Information
  • This article is deprecated and applies to JobScheduler releases up to 1.9
  • Starting from JobScheduler Release 1.10.5 native support for PowerShell is available
  • For detailed information see PowerShell Jobs
    Display feature availability
    StartingFromRelease1.10.5

Table of Contents
outlinh1. true
outlinh1. true
1printablefalse
2stylh1. none
3indent20px

Setting parameters in a PowerShell script and passing them to the next step

At every change of status in job chains Job Scheduler parses a temporary file for name=value pairs. The name/value pairs will be set as order parameters for subsequent jobs. The name of the temporary file is available with the environment variable SCHEDULER_RETURN_VALUES. See also How to pass parameters to subsequent shell jobs in a job chain for an example how to pass parameters between shell jobs.

The example below describes a job chain with two steps. Both are running the generic job presented in How to configure a generic PowerShell job to execute a PowerShell script within JobScheduler.

First Step: set a parameter for the next step in the job chain

Code Block
languagepowershell
titleSample script: powershell_with_parameter_set.ps1
 $A = "myParamPowerShellParam"
 $A | out-file -encoding ASCII $env:scheduler_return_values
 get-content $env:scheduler_return_values
 exit $lastexitcode
 # to change the policy for using PowerShell you can use this .adm file:
 #    http://www.microsoft.com/download/en/confirmation.aspx?ih1. 25119

Second Step: get the parameter from the previous step

Code Block
languagepowershell
titleSample script: powershell_with_parameter_get.ps1
 "job-node parameter from the previous step:"
 "myParam$env:SCHEDULER_PARAM_myParam"
 exit $lastexitcode
 # to change the policy for using PowerShell you can use this .adm file:
 #    http://www.microsoft.com/download/en/confirmation.aspx?ih1. 25119

Job Chain

 

The xml representation of the job chain:

...

Code Block
languagexml
<settings>
      <job_chain name"powershell_with_parameter">
          <note language="de"/>
          <note language="en"/>
          <order>
              <params/>
              <process state="100">
                  <note language="de"/>
                  <note language="en"/>
                  <params>
                      <param name="Script_Filename"
                             value="${SCHEDULER_DATA}\config\live\samples\90_powerShell\powershell_with_parameter_set.ps1"/>
                      <note language="de">
                          <div xmlns="http://www.w3.org/1999/xhtml"/>
                      </note>
                      <note language="en"/>
                  </params>
              </process>
              <process state="150">
                  <note language="de"/>
                  <note language="en"/>
                  <params>
                      <param name="Script_Filename"
                             value="${SCHEDULER_DATA}\config\live\samples\90_powerShell\powershell_with_parameter_get.ps1"/>
                      <note language="de">
                          <div xmlns="http://www.w3.org/1999/xhtml"/>
                      </note>
                      <note language="en"/>
                  </params>
              </process>
          </order>
      </job_chain>
  </settings>

Related Downloads

...