cylc-ui
cylc-ui copied to clipboard
gscan: metadata filtering
Note: Follow-on from https://github.com/cylc/cylc-ui/issues/337 (further enhancement comment)
Support filtering by user-defined metadata.
Arbitrary workflow metadata can be defined like so:
[meta]
title = 'foo bar baz'
system = some-system
model = xyz
It would be useful to be able to use this for searching and filtering in GScan. E.G. display my workflows in a hierarchy with "system" as the top-level.
For running workflows this shouldn't be too bad, however, for stopped workflows the UIS would have to read in the workflow configuration file to access the metadata which isn't something we can do (potentially extremely slow and resource hungry).
For offline data we may need to consider using a system similar to the Cylc7 scan which bypaseed parsec and only worked if the metadata section was the first section defined in the suite.rc (ignoring Jinja2).
Alternatively we could support a Cylc metadata file e.g. flow-meta.cylc
that is automatically prepended to the top of the flow.cylc
by parsec.
Pull requests welcome!
Another idea: at install time, parse flow.cylc (for validation) and dump metadata to another file for the UIS to access.
Adding a couple of incomplete points from https://github.com/cylc/cylc-ui/issues/337, namely filter by:
- Cylc version
- Workflow host