Toil Class API¶
The Toil class configures and starts a Toil run.
-
class
toil.common.
Toil
(options: argparse.Namespace)[source]¶ A context manager that represents a Toil workflow.
Specifically the batch system, job store, and its configuration.
-
__init__
(options: argparse.Namespace) → None[source]¶ Initialize a Toil object from the given options.
Note that this is very light-weight and that the bulk of the work is done when the context is entered.
Parameters: options – command line options specified by the user
-
start
(rootJob: Job) → Any[source]¶ Invoke a Toil workflow with the given job as the root for an initial run.
This method must be called in the body of a
with Toil(...) as toil:
statement. This method should not be called more than once for a workflow that has not finished.Parameters: rootJob – The root job of the workflow Returns: The root job’s return value
-
restart
() → Any[source]¶ Restarts a workflow that has been interrupted.
Returns: The root job’s return value
-
classmethod
getJobStore
(locator: str) → AbstractJobStore[source]¶ Create an instance of the concrete job store implementation that matches the given locator.
Parameters: locator (str) – The location of the job store to be represent by the instance Returns: an instance of a concrete subclass of AbstractJobStore
-
static
createBatchSystem
(config: toil.common.Config) → AbstractBatchSystem[source]¶ Create an instance of the batch system specified in the given config.
Parameters: config – the current configuration Returns: an instance of a concrete subclass of AbstractBatchSystem
-
import_file
(src_uri: str, shared_file_name: Optional[str] = None, symlink: bool = False) → Optional[toil.fileStores.FileID][source]¶ Import the file at the given URL into the job store.
See
toil.jobStores.abstractJobStore.AbstractJobStore.importFile()
for a full description
-
export_file
(file_id: toil.fileStores.FileID, dst_uri: str) → None[source]¶ Export file to destination pointed at by the destination URL.
See
toil.jobStores.abstractJobStore.AbstractJobStore.exportFile()
for a full description
-
static
normalize_uri
(uri: str, check_existence: bool = False) → str[source]¶ Given a URI, if it has no scheme, prepend “file:”.
Parameters: check_existence – If set, raise an error if a URI points to a local file that does not exist.
-
static
getToilWorkDir
(configWorkDir: Optional[str] = None) → str[source]¶ Return a path to a writable directory under which per-workflow directories exist.
This directory is always required to exist on a machine, even if the Toil worker has not run yet. If your workers and leader have different temp directories, you may need to set TOIL_WORKDIR.
Parameters: configWorkDir – Value passed to the program using the –workDir flag Returns: Path to the Toil work directory, constant across all machines
-
classmethod
get_toil_coordination_dir
(configWorkDir: Optional[str] = None) → str[source]¶ Return a path to a writable directory, which will be in memory if convenient. Ought to be used for file locking and coordination.
Parameters: configWorkDir – Value passed to the program using the –workDir flag Returns: Path to the Toil coordination directory.
-
classmethod
getLocalWorkflowDir
(workflowID: str, configWorkDir: Optional[str] = None) → str[source]¶ Return the directory where worker directories and the cache will be located for this workflow on this machine.
Parameters: configWorkDir – Value passed to the program using the –workDir flag Returns: Path to the local workflow directory on this machine
-
classmethod
get_local_workflow_coordination_dir
(workflow_id: str, config_work_dir: Optional[str] = None) → str[source]¶ Return the directory where coordination files should be located for this workflow on this machine. These include internal Toil databases and lock files for the machine.
If an in-memory filesystem is available, it is used. Otherwise, the local workflow directory, which may be on a shared network filesystem, is used.
Parameters: - workflow_id – Unique ID of the current workflow.
- config_work_dir – Value used for the work directory in the current Toil Config.
Returns: Path to the local workflow coordination directory on this machine.
-