Provides export functionalities.
aiida.tools.importexport.dbexport.
ExportFileFormat
Bases: str, enum.Enum
str
enum.Enum
Archive file formats
TAR_GZIPPED
ZIP
__dict__
__module__
__weakref__
list of weak references to the object (if defined)
_generate_next_value_
_member_map_
_member_names_
_member_type_
alias of builtins.str
builtins.str
_value2member_map_
export
Export AiiDA data to an archive file.
Note, the logging level and progress reporter should be set externally, for example:
from aiida.common.progress_reporter import set_progress_bar_tqdm EXPORT_LOGGER.setLevel('DEBUG') set_progress_bar_tqdm(leave=True) export(...)
Deprecated since version 1.5.0: Support for the parameter silent will be removed in v2.0.0. Please set the log level and progress bar implementation independently.
Deprecated since version 1.5.0: Support for the parameter use_compression will be removed in v2.0.0. Please use writer_init={‘use_compression’: True}.
Deprecated since version 1.2.1: Support for the parameters what and outfile will be removed in v2.0.0. Please use entities and filename instead, respectively.
entities – a list of entity instances; they can belong to different models/entities.
filename – the filename (possibly including the absolute path) of the file on which to export.
file_format – ‘zip’, ‘tar.gz’ or ‘folder’ or a specific writer class.
overwrite – if True, overwrite the output file without asking, if it exists. If False, raise an ArchiveExportError if the output file already exists.
ArchiveExportError
allowed_licenses – List or function. If a list, then checks whether all licenses of Data nodes are in the list. If a function, then calls function for licenses of Data nodes expecting True if license is allowed, False otherwise.
forbidden_licenses – List or function. If a list, then checks whether all licenses of Data nodes are in the list. If a function, then calls function for licenses of Data nodes expecting True if license is allowed, False otherwise.
include_comments – In-/exclude export of comments for given node(s) in entities. Default: True, include comments in export (as well as relevant users).
entities
include_logs – In-/exclude export of logs for given node(s) in entities. Default: True, include logs in export.
writer_init – Additional key-word arguments to pass to the writer class init
batch_size – batch database query results in sub-collections to reduce memory usage
traversal_rules – graph traversal rules. See aiida.common.links.GraphTraversalRules what rule names are toggleable and what the defaults are.
aiida.common.links.GraphTraversalRules
a dictionary of data regarding the export process (timings, etc)
ArchiveExportError – if there are any internal errors when exporting.
LicensingException – if any node is licensed under forbidden license.
Utility functions for export of AiiDA entities
aiida.tools.importexport.dbexport.utils.
check_licenses
Check licenses
check_process_nodes_sealed
Check ProcessNode s are sealed Only sealed ProcessNode s may be exported.
ProcessNode
nodes (list, int) – ProcessNode s to be checked. Should be their PK(s).
ExportValidationError – if a ProcessNode is not sealed or nodes is not a list, set, or int.
deprecated_parameters
Handle deprecated parameter (where it is replaced with another)
old (dict) – The old, deprecated parameter as a dict with keys “name” and “value”
new (dict) – The new parameter as a dict with keys “name” and “value”
New parameter’s value (if not defined, then old parameter’s value)
fill_in_query
This function recursively constructs QueryBuilder queries that are needed for the SQLA export function. To manage to construct such queries, the relationship dictionary is consulted (which shows how to reference different AiiDA entities in QueryBuilder. To find the dependencies of the relationships of the exported data, the get_all_fields_info (which described the exported schema and its dependencies) is consulted.
serialize_dict
Serialize the dict using the serialize_field function to serialize each field.
remove_fields –
a list of strings. If a field with key inside the remove_fields list is found, it is removed from the dict.
This is only used at level-0, no removal is possible at deeper levels.
rename_fields –
a dictionary in the format {"oldname": "newname"}.
{"oldname": "newname"}
If the “oldname” key is found, it is replaced with the “newname” string in the output dictionary.
This is only used at level-0, no renaming is possible at deeper levels.
track_conversion – if True, a tuple is returned, where the first element is the serialized dictionary, and the second element is a dictionary with the information on the serialized fields.
serialize_field
Serialize a single field.
Generalize such that it the proper function is selected also during import
summary
Print summary for export