You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 23 Next »

Introduction

  • Environment variables are a means of parameterizing jobs.
  • A number of environment variables are available to shell jobs by default.
  • Additional environment variables can be added per job configuration from JS7 - Order Variables, from node arguments and from JS7 - Job Resources.

Environment Variables that are automatically available to Shell Jobs

The following environment variables are available to all shell jobs. They are provided from the Agent Instance Script and from the Agent binary files.

Depending on the OS, environment variables are syntactically used like this:

  • Windows: %JS_AGENT_HOME%
  • Unix: $JS_AGENT_HOME or ${JS_AGENT_HOME} 


CategoryEnvironment VariableDescriptionAdjustable by ScriptDefault Value
AgentJS7_AGENT_PORTThe number of the port that an Agent is listening to for messages sent from a Controller.Agent Instance Script4445

JS7_AGENT_HTTP_PORTSame as JS7_AGENT_PORT except that a network interface can be specified, e.g. localhost:4445 to limit access to the given network interface.Agent Instance Script4445

JS7_AGENT_HTTPS_PORTThe SSL port used in addition to the HTTP port. A network interface can be specified, e.g. myhost:4447 to limit access to the given network interface.Agent Instance Scriptn/a

JS7_AGENT_USERThe account that the Agent is operated for. For Unix OS the account can be specified from the Agent Instance Script. For Windows OS the service account assigned to the Agent with the Windows Service Panel is provided.

Unix: Agent Instance Script

Windows: Service Account

n/a

JS7_AGENT_HOME

The Agent's home directory, i.e. the directory to which the Agent has been installed. For Windows OS this could be e.g. C:\Pogram Files\sos-berlin.com\js7\agent

For Unix OS environments this could be e.g.
/home/sos/js7/agent

Agent Instance Scriptn/a

JS7_AGENT_DATA

The Agent's data directory with sub-directories for temporary data, configuration data etc. The name of the data directory is created from the prefix var_ followed by the port the Agent is operated for, e.g. var_4445.

For Windows OS this could be e.g. C:\PogramData\sos-berlin.com\js7\agent_4445

For Unix OS environments this could be e.g.
/home/sos/js7/agent/var_4445

The Agent's home directory JS7_AGENT_HOME includes a symbolic link var_<port> that points to the data directory.

Agent Instance ScriptJS7_AGENT_HOME/var_<JS7_AGENT_PORT>

JS7_AGENT_CONFIG_DIRThe Agent's configuration directory.Agent Instance ScriptJS7_AGENT_DATA/config

JS7_AGENT_LOGSThe Agent's directory for log files.Agent Instance ScriptJS7_AGENT_DATA/logs

JS7_AGENT_PID_FILEThe Agent's creates the agent.pid file in the logs directory that contains the process ID of the current Agent run.Agent Instance ScriptJS7_AGENT_DATA/logs/agent.pid

JS7_AGENT_WORK_DIRThe Agent's working directory.Agent Instance ScriptJS7_AGENT_DATA

JS7_AGENT_KILL_SCRIPTThe script used by the Agent to kill job processes. Users can implement their own version of this script if required for a specific OS.Agent Instance ScriptJS7_AGENT_DATA/tmp/kill_task.sh

JS7_AGENT_TZThe time zone of the Agents' computerAgent Start ScriptEtc/UTC





Run-timeJS7_RETURN_VALUESThe location of a temporary file created by the Agent for the current shell job that can be used to append pairs of names and values with each pair being added on a separate line. After execution of the shell job the Agent will add order variables with the respective names and values found from this file.n/a

JAVA_HOMEThe location of the Java installation directory as used by the Agent.Agent Instance ScriptJAVA_HOME

JAVA_OPTIONSJava options for the Agent loading its JVM are different from Java options used for jobs that run individual Java programs. Therefore the Agent Start Script allows the JS7_AGENT_JOB_JAVA_OPTIONS environment variable to be set e.g. to limit a job's memory consumption with the option -Xmx32m. Therefore this environment variable is populated from the Java job options environment variable.Agent Instance ScriptJS7_AGENT_JOB_JAVA_OPTIONS





File TransferJS7_YADE_HOMEThe home directory of the YADE installation. By default the Agent ships with YADE included in the yade sub-directory of the Agent's home directory.n/aJS7_AGENT_HOME/yade

JS7_YADE_BINThe path to the YADE start script. Usually this is located in the bin sub-directory of the directory specified  by JS7_YADE_HOME.n/a

Unix: JS7_YADE_HOME/bin/yade.sh

Windows: JS7_YADE_HOME/bin/yade.cmd


JS7_YADE_DMZ_BINThe location of the start script used to run YADE in a DMZ. By default the directory is the same as JS7_YADE_HOME/bin and the file name is yade4dmz.sh.n/a

Unix: JS7_YADE_HOME/bin/yade4dmz.sh

Windows: JS7_YADE_HOME/bin/yade4dmz.cmd


JS7_YADE_CONFIG_DIRThe location of the configuration directory that holds YADE file transfer configuration files (*.xml, *.ini). By default the Agent's configuration directory is used.Agent Instance ScriptJS7_AGENT_CONFIG_DIR


Environment Variables suggested from Job Resources for Shell Jobs

The following environment variables are not available by default. 

  • They are provided from the default Job Resource that ships with JS7 and that can be assigned any workflows and shell jobs.
  • They can be provided from individual JS7 - Job Resources.

Users are free to define their own job resources to publish individual environment variables to workflows and jobs.


CategoryEnvironment VariableDescriptionAdjustable by ScriptDefault Value
ControllerJS7_CONTROLLER_IDIdentification of a Controller as specified during initial operation.n/an/a





InventoryJS7_JOB_NAMEThe name of the job as specified with the workflow configuration.n/a

JS7_ORDER_IDThe order identification as returned when creating an order.n/a

JS7_WORKFLOW_NAMEThe name of the workflow.n/a

JS7_WORKFLOW_LABELThe label assigned the workflow instruction for the job. Consider that the same job can be used a number of times in a workflow and that its assignment to an instruction is additionally specified by a label.n/a

JS7_WORKFLOW_POSITIONThe indicator for the position of the order in the current workflow.n/a





Scheduled DateJS7_SCHEDULED_DATE

The date for which an order originally was scheduled. The date format includes yyyy, MM, dd, hh, mm, ss and the time zone offset, e.g. 2020-12-03 09:13:59+0100

n/aScheduled Date

JS7_SCHEDULED_YEARThe year of the scheduled date padded by 2 digits, e.g. 2020, 2021, 2022 etc.n/aYear of Scheduled Date

JS7_SCHEDULED_MONTHThe month of the scheduled date padded by 2 digits, e.g. 01, ..., 12n/aMonth of Scheduled Date

JS7_SCHEDULED_DAYThe day of the scheduled date padded by 2 digits, e.g. 01, ..., 31n/aDay of Scheduled Date

JS7_SCHEDULED_HOURThe hour of the scheduled date padded by 2 digits, e.g. 00, ..., 24n/aHour of Scheduled Date

JS7_SCHEDULED_MINUTEThe minute of the scheduled date padded by 2 digits, e.g. 01, ..., 59n/aMinute of Scheduled Date

JS7_SCHEDULED_SECONDThe second of the scheduled date padded by 2 digits, e.g. 01, ..., 59n/aSecond of Scheduled Date





Job Start DateJS7_JOBSTART_DATEThe date at which the job was started. The date format includes yyyy, MM, dd, hh, mm, ss and the time zone offset, e.g. 2020-12-03 09:13:59+0100n/aStart Date of the task for a shell job or Start Date of the processing of an order by a JVM job

JS7_JOBSTART_YEARThe year of the job start date padded by 2 digits, e.g. 2020, 2021, 2022 etc.n/aYear of Job Start Date

JS7_JOBSTART_MONTHThe month of the job start date padded by 2 digits, e.g. 01, ..., 12n/aMonth of Job Start Date

JS7_JOBSTART_DAYThe day of the job start date padded by 2 digits, e.g. 01, ..., 31n/aDay of Job Start Date

JS7_JOBSTART_HOURThe hour of the job start date padded by 2 digits, e.g. 00, ..., 24n/aHour of Job Start Date

JS7_JOBSTART_MINUTEThe minute of the job start date padded by 2 digits, e.g. 01, ..., 59n/aMinute of Job Start Date

JS7_JOBSTART_SECONDThe second of the job start date padded by 2 digits, e.g. 01, ..., 59n/aSecond of Job Start Date

JS7_JOBSTART_EPOCHMILLISThe number of milliseconds since January 1st 1970 UTC until the job start daten/aEpoch milliseconds for Job Start Date

Environment Variables available per Job Configuration

  • The job configuration offers to specify environment variables that are forwarded to the job script.
  • The values of environment variables can be specified from:
    • constant string values
    • order variables
    • node arguments


Explanation:

  • Users are free to choose the names of environment variables. Such names are automatically converted to uppercase letters.
  • Environment variables can be assigned values from order variables and from node arguments. Such variables are preceded by a $ and consider the spelling of the respective variable or argument.
  • Caveat: Any existing environment variables with the same name will be overwritten from the job configuration. You can e.g. specify a PATH environment variable if the intention is to modify this OS environment variable for use with a specific job.



  • No labels