Package schrodinger :: Package test :: Package scival :: Module suite :: Class SuiteJob
[hide private]
[frames] | no frames]

Class SuiteJob

         object --+            
                  |            
  job.queue.BaseJob --+        
                      |        
job.queue.JobControlJob --+    
                          |    
             object --+   |    
                      |   |    
             _SciValJob --+    
                          |    
               BaseSuiteJob --+
                              |
                             SuiteJob
Known Subclasses:

Available instance attributes include the following arguments provided to the constructor: client, test, jobname, command, schrodinger, run_env, run_only.

Instance Methods [hide private]
 
__init__(self, test, run_env, jobname, command, exec_dir=None, add_results=False, log_file=None, buildtype=None, build_id=None, **kwargs)
Job constructor.
 
__str__(self)
str(x)
 
testName(self)
 
suiteName(self)
 
execFilepath(self, filename)
Gets the absolute filepath of a result using the directory path of the exec_dir.
 
getResults(self)
This is an abstract method and must be defined in the subclass.
 
upload(self)
Method to upload the results to the client.
 
setServerRunState(self)
 
run(self, *argv, **kwargs)
Run the job.
 
postCommand(self, *args, **kwargs)
A method to restore things to the pre-command state.
 
setup(self)
Download files for the job.
 
getJobParams(self)
Gets a dict of important jobcontrol parameters.
 
finalize(self)
Clean up after a job successfully runs.
 
getFiles(self, test_set)
Gets all the input files for this suite job
 
kill(self)
Send kill request to jobcontrol managed job
 
update(self)
Checks for changes in job status, and updates the object appropriately (marks for restart, etc).

Inherited from job.queue.JobControlJob: __getstate__, __setstate__, cancelSubmitted, doCommand, getCommand, getJob, getStatusStrings, maxFailuresReached, retryFailure, runsLocally, usesJobServer

Inherited from job.queue.BaseJob: __lt__, addFinalizer, addGroupPrereq, addPrereq, genAllJobs, genAllPrereqs, getCommandDir, getJobDJ, getPrereqs, hasStarted, isComplete, preCommand

Inherited from job.queue.BaseJob (private): _getState, _pruneGraph, _setState

Inherited from object: __delattr__, __format__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __repr__, __setattr__, __sizeof__, __subclasshook__

Class Variables [hide private]
  client = None
Aggregate Client from validation.aggregate.
  prerequisite_job_classes = ()
An iterable of job classes to generate the prerequisite jobs for this one.

Inherited from job.queue.BaseJob: init_count

Properties [hide private]
  host_id
  host_name

Inherited from job.queue.BaseJob: state

Inherited from object: __class__

Method Details [hide private]

__init__(self, test, run_env, jobname, command, exec_dir=None, add_results=False, log_file=None, buildtype=None, build_id=None, **kwargs)
(Constructor)

 

Job constructor.

Parameters:
  • client - A validation.aggregate.AggregateClient instance.
  • test - A dictionary describing the test as downloaded from the server. Guaranteed to have a 'name' key.
  • jobname - A name for the job.
  • command (list of str) - The command that will launch the job.
Overrides: object.__init__

__str__(self)
(Informal representation operator)

 

str(x)

Overrides: object.__str__
(inherited documentation)

testName(self)

 
Overrides: _SciValJob.testName

suiteName(self)

 
Overrides: _SciValJob.suiteName

upload(self)

 

Method to upload the results to the client. This method requires that each subclass implements a getResults method and that that method returns a dictionary of results used in adding results.

run(self, *argv, **kwargs)

 

Run the job.

The steps taken are as follows:

  1. Execute the preCommand method for things like changing the working directory.
  2. Call the doCommand to do the actual work of computation or job launching.
  3. Call the postCommand method to undo the changes from the preCommand that need to be undone.
Overrides: job.queue.BaseJob.run
(inherited documentation)

postCommand(self, *args, **kwargs)

 

A method to restore things to the pre-command state.

Overrides: job.queue.BaseJob.postCommand
(inherited documentation)

setup(self)

 

Download files for the job.

Overrides: job.queue.BaseJob.setup

finalize(self)

 

Clean up after a job successfully runs.

Overrides: job.queue.BaseJob.finalize
(inherited documentation)

kill(self)

 

Send kill request to jobcontrol managed job

Overrides: job.queue.JobControlJob.kill
(inherited documentation)

update(self)

 

Checks for changes in job status, and updates the object appropriately (marks for restart, etc). Raises a RuntimeError if an unknown Job Status or ExitStatus is encountered.

Overrides: job.queue.BaseJob.update
(inherited documentation)

Class Variable Details [hide private]

prerequisite_job_classes

An iterable of job classes to generate the prerequisite jobs for this one. Jobs will be run in order, left to right with this job last.

Value:
()

Property Details [hide private]

host_id

Get Method:
unreachable.host_id(self)

host_name

Get Method:
unreachable.host_name(self)