Versions Compared

Key

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

Table of Contents

Problem

Some users Users may observe the following error message when initially running jobs:

...

This problem can occur if, for example, workflows have been used from JS7 - Download.

As a result, some jobs of in the example workflows fail with the above error message.

Analysis

The error message indicates that an environment variable with the name COMPUTERNAME is used in a job. However this environment variable does not exist.

  • The reason is lies with the JS7 - Job Resources from the archive Defaults.zip that archive which is offered available from JS7 - Download. After import being imported this archive is extracted to a JOC Cockpit folder with the name Defaults and a job resource with the name Default. Find details from Details can be found in the JS7 - Job Environment Variables article.
  • The Default job resource includes an argument with the name js7AgentHostname and an environment variable with the name JS7_AGENT_HOSTNAME. By default the argument is assigned this the following value:

    Code Block
    js7AgentHostname = env('HOSTNAME', env('COMPUTERNAME'))
  • The This expression first makes use of a HOSTNAME environment variable (available for most Unix systems) and if this does not exist uses the COMPUTERNAME environment variable (available for Windows systems). Therefore running a job that makes use of the Default job resource on a Unix OS that does not provide the HOSTNAME environment variable causes the error.
  • The HOSTNAME environment variable that which is assumed from the Job Resource in fact is a bash variable and might may not be available if some other another shell such as ksh, or tsh is used or if the Agent's account is has not been assigned the bash shell in /etc/passwd.

The assignment of the js7AgentHostname argument is performed in the Configuration view for Job Resources like this:


Solution

Modify the value of the js7AgentHostname argument like thisas follows:

Code Block
js7AgentHostname = env('HOSTNAME', env('COMPUTERNAME', ""))

...

  • The env() function makes use of two arguments: the first argument specifies an environment variable, the second argument specifies a default value should if the environment variable does not exist.
  • Adding an empty default value - specified by two double quotes - as provided from in the example above example resolves the problem.
  • To apply changes deploy the job resource after modification.
  • As an alternative to this solution users can assign the /bin/bash shell to the user account used by the Agent.

...