Skip to main content

Jobs

A Job is the blueprint of what defines a unit of work in JAMS. It is the thing to run (a command, script, etc.). It also includes the properties that decide how, where, as whom, and under what conditions it runs.

Submitting a Job creates a separate Entry in the Monitor, and one Job can have many Entries. Every component in JAMS supports or controls how a Job is defined or run.

A Job definition and a Job Entry are different things in JAMS​

Everything in JAMS is based on this distinction.

  • Job Definition: This is the blueprint and what you edit.
  • Entry: This is what happens when the Job is submitted. It appears in the Monitor as an Entry. Think of it as a Run Instance of the Job. Each Job may have zero to many Entries.
note

Editing a Job Definition does not touch an Entry already in the Monitor. When something in the documentation says a Job is Waiting for Prerequisites or has gone Runaway, it is describing an Entry.

What a Job is made of​

  • Execution Method: An Execution Method defines how a Job executes within the JAMS environment. JAMS includes dozens of Execution Methods to run Jobs on Windows, Unix, Linux, etc.

    note

    Every Job must have an Execution Method. There are 70+ shipped Execution Methods that are built-in to JAMS.

  • Source: In a JAMS Job Definition, the Source is where the actual executable logic (the code, script, or command) is written and stored. The Source dictates exactly what the Job does when it runs. As an example, this could be a PowerShell script, a command, or the steps for interacting with an integration like AWS EC2, or Airflow.

  • Properties: What it runs as, where, when, what it needs first, and what should happen afterwards.

Folders​

A Folder in JAMS is a place to keep your Jobs. Folders are the foundational building block in JAMS. If you are familiar with Microsoft Windows, you already understand the basic purpose of a JAMS Folder. Just as Windows uses folders to organize files into a logical, easily navigable hierarchy, JAMS uses Folders to organize your workload automation.

While a Windows Folder is mostly a passive container for your files, a JAMS Folder is highly active. It acts as a master template for the Jobs inside it. In fact, organizing your work is so critical in JAMS that there is one absolute rule: Every Job must belong to a Folder. A Job cannot exist on its own in a vacuum.

When you place a Job inside a JAMS Folder, it automatically inherits the rules, schedules, and security settings defined by that Folder. This concept is called Inheritance, and it is the key to scaling your automation without repetitive manual work. Instead of configuring the exact same settings on 50 individual Jobs, you set them once on the Folder.

Building Your Framework​

While Jobs can always have their own unique schedules or overrides, the Folder provides the foundational framework.

What makes it more than a filing cabinet is that a Folder also holds settings, and everything inside it picks them up. Put a Credential on the folder and every Job in it runs as that account. The same is true of Agents, Resources, Triggers, Documentation and notification addresses. Any individual Job can override what it inherits, but if it doesn't say otherwise, it takes the folder's answer.

Parameters​

Once you understand Jobs and how Folders organize that work, the next step is making your automation flexible. That is where Parameters come in.

Think of a Parameter like a fill-in-the-blank field on a form. Instead of writing a rigid Job that does the exact same thing every single time, a Parameter allows you to pass specific data into a Job right as it runs.

Parameters belong to a single Job. They are referenced in the Job Source as <<ParameterName>> or {ParameterName}, and if a Job has any, whoever submits it gets a fill-in-the-blanks form.

Variables​

Variables are the same idea as Parameters, but with a wider scope. Variables are designed for data that is shared across multiple Jobs and rarely changes from run to run. Instead of being tied to a single Job, Variables are typically stored at the Folder level (or globally). Remember how Folders pass down rules? Any Job inside a Folder can instantly read the Variables stored there.

While a Variable stays the same until an administrator changes it, a Parameter is evaluated every single time the Job runs.