class invoke.loader.Loader(config=None)

Abstract class defining how to find/import a session’s base Collection.

New in version 1.0.


Set up a new loader with some Config.

Parameters:config – An explicit Config to use; it is referenced for loading-related config options. Defaults to an anonymous Config() if none is given.

Implementation-specific finder method seeking collection name.

Must return a 4-tuple valid for use by imp.load_module, which is typically a name string followed by the contents of the 3-tuple returned by imp.find_module (file, pathname, description.)

For a sample implementation, see FilesystemLoader.

New in version 1.0.


Load and return collection module identified by name.

This method requires a working implementation of find in order to function.

In addition to importing the named module, it will add the module’s parent directory to the front of sys.path to provide normal Python import behavior (i.e. so the loaded module may load local-to-it modules or packages.)

Returns:Two-tuple of (module, directory) where module is the collection-containing Python module object, and directory is the string path to the directory the module was found in.

New in version 1.0.

class invoke.loader.FilesystemLoader(start=None, **kwargs)

Loads Python files from the filesystem (e.g. tasks.py.)

Searches recursively towards filesystem root from a given start point.

New in version 1.0.