Skip to content

ICAT upload: support uploading workflow outputs as ICAT keys #36

Description

@poautran

In GitLab by @woutdenolf on Mar 15, 2025, 04:56 GMT+1:

https://gitlab.esrf.fr/workflow/ewoks/ewoks/-/blob/main/src/ewoks/bindings.py?ref_type=heads#L85

def execute_graph(...,
    upload_parameters: Optional[dict] = None
):
        result = mod.execute_graph(graph, execinfo=execinfo, **execute_options)

        # Upload results
        if upload_parameters:
            _upload_result(upload_parameters)

We end up calling store_processed_data from pyicat-plus:

https://pyicat-plus.readthedocs.io/en/latest/_generated/pyicat_plus.client.interface.IcatClientInterface.html#pyicat_plus.client.interface.IcatClientInterface.store_processed_data

upload_parameters["metadata"] can contain a flat dict of ICAT fields

https://pyicat-plus.readthedocs.io/en/latest/metadata.html

The idea is to generate this dict from the workflow outputs.

Assignees: @LudoBroche

Migrated from GitLab: https://gitlab.esrf.fr/workflow/ewoks/ewoks/-/issues/36

Metadata

Metadata

Assignees

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions