NAME¶
globus_gram_job_manager_script_interface - Job Manager Scheduler Interface The
GRAM Job Manager interfaces with the job filesystems and scheduler through
scheduler-specific Perl modules.
GRAM provides several Perl modules which can be used to implement
scheduler-specific interfaces to the GRAM Job Manager. These are:
- Globus::GRAM::Error
- This module implements the GRAM error results as objects.
Methods in this module will construct a GRAM error with the value matching
the values in the GRAM Protocol library. A scheduler-specific JobManager
module may return one of these objects from its methods to indicate errors
to the Job Manager program.
- Globus::GRAM::JobState
- This module defines the GRAM job state constants. A
scheduler-specific JobManager module returns one of these values from its
methods to indicate the managed job's current state.
- Globus::GRAM::JobSignal
- This module defines the GRAM job signal constant values.
The Job Manager uses these values to communicate which signal is being
invoked in the manager's signal method.
- Globus::GRAM::JobManager
- This module defines the actual implementatoin of the Job
Manager scheduler interface. One writing a scheduler-specific GRAM
interface will create a subclass of this object which overrides the
default implementation's methods.
- Globus::GRAM::JobDescription
- This module mimics the RSL job description using perl
syntax. The job manager passes an object of this type to the JobManager
modules's constructor. The job manager stores RSL and some configuration
values in that JobDescription object. The manager accesses values stored
in the JobDescription by invoking methods containing the RSL attribute's
name (example: $description->gram_my_job()). Method names are handled
as if they were based on the canonical RSL representation of the attribute
name. For example, the gram_my_job may be equivalently referred to
as GramMyJob, grammyjob, or GRAM_My_Job.