Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

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

User defined parameters in shell scripts

  • Job parameters and order parameters are accessible by environment variables to shell jobs.
  • There is a simple rule for the naming of environment variables: 
    • The name of the environment variable for a parameter is SCHEDULER_PARAM_NAMEOFPARAM
    • For example the job parameter param1 is available by the environment variable SCHEDULER_PARAM_PARAM1
    • Environment variables are used with uppercase letters
    • If you wanted not to use the prefix SCHEDULER_PARAM_ and instead use the parameter names as environment variables then you could add the following setting to your ./config/scheduler.xml file:

      Code Block
      languagexml
      <params>
          <param name="scheduler.variable_name_prefix" value="*NONE"/>
          ...
      </param>

      (info) Hint: You have been warned, JobScheduler would overwrite existing environment variables with the same name for the respective shell.

Examples

Code Block
languagexml
titleExample for Windows
 <job>
    <params>
        <param name="param1"  value="Test"/>
    </params>
    <script language="shell">
        <![CDATA[
 rem This is an example shell script to show the use of parameters
 echo Param1 has the value %SCHEDULER_PARAM_PARAM1%
        ]]>
    </script>
    <run_time/>
 </job>

...

Code Block
languagebash
titleExample for command line (Unix)
  anyshellscript.sh $SCHEDULER_PARAM_PARAM1 $SCHEDULER_PARAM_PARM2 ...

Passing parameters to subsequent shell jobs in a job chain

  • With every change of status in job chains JobScheduler parses a temporary file for name=value pairs. 
    • The name of the temporary file is available with the environment variable SCHEDULER_RETURN_VALUES
    • The name/value pairs are automatically added as order parameters

...

Code Block
languagexml
titleExample for Job Chain
 <job_chain>
    <job_chain_node state="100"
                    job="job_sample_shell_with_parameter"
                    next_state="200"
                    error_state="error"/>
    <job_chain_node state="200"
                    job="job_sample_shell"
                    next_state="success"
                    error_state="error"/>
    <job_chain_node state="success"/>
    <job_chain_node state="error"/>
 </job_chain>

Related Downloads

...