Managing projects
The projects module defines the Project class, which stores information
about a computation-based project and contains a number of methods for managing
and running computational experiments, whether simulations, analyses or
whatever. This is the main class that is used directly when using Sumatra within
your own scripts.
-
class sumatra.projects.Project(name, default_executable=None, default_repository=None, default_main_file=None, default_launch_mode=None, data_store=u'default', record_store=u'default', on_changed=u'error', description=u'', data_label=None, input_datastore=None, label_generator=u'timestamp', timestamp_format=u'%Y%m%d-%H%M%S', allow_command_line_parameters=True, plugins=[])
Bases: future.types.newobject.newobject
-
add_record(record)
Add a simulation or analysis record.
-
add_tag(label, tag)
-
backup()
Create a new backup directory in the same location as the
project directory and copy the contents of the project
directory into the backup directory. Uses _get_project_file
to extract the path to the project directory.
Returns: |
- backup_dir: the directory used for the backup
|
-
change_record_store(new_store)
Change the record store that is used by this project.
-
compare(label1, label2, ignore_mimetypes=[], ignore_filenames=[])
-
data_label
-
delete_by_tag(tag, delete_data=False)
Delete all records with a given tag. Return the number of records deleted.
-
delete_record(label, delete_data=False)
Delete a record. Return 1 if the record is found.
Otherwise return 0.
-
export()
-
find_records(tags=None, reverse=False)
-
format_records(format=u'text', mode=u'short', tags=None, reverse=False)
-
get_record(label)
Search for a record with the supplied label and return it if found.
Otherwise return None.
-
info()
Show some basic information about the project.
-
launch(parameters={}, input_data=[], script_args=u'', executable=u'default', repository=u'default', main_file=u'default', version=u'current', launch_mode=u'default', label=None, reason=None, timestamp_format=u'default', repeats=None)
Launch a new simulation or analysis.
-
load_plugins(*plugins)
-
most_recent()
-
new_record(parameters={}, input_data=[], script_args=u'', executable=u'default', repository=u'default', main_file=u'default', version=u'current', launch_mode=u'default', label=None, reason=None, timestamp_format=u'default')
-
next()
-
remove_plugins(*plugins)
-
remove_tag(label, tag)
-
repeat(original_label, new_label=None)
-
save()
Save state to some form of persistent storage. (file, database).
-
show_diff(label1, label2, mode=u'short', ignore_mimetypes=[], ignore_filenames=[])
-
update_code(working_copy, version=u'current')
Check if the working copy has modifications and prompt to commit or revert them.
-
valid_name_pattern = u'(?P<project>\\w+[\\w\\- ]*)'
-
sumatra.projects.load_project(path=None)
Read project from directory passed as the argument and return Project
object. If no argument is given, the project is read from the current
directory.