You can set tags for workflow at registration (geni workflow create) or using geni workflow update.
Tags on a given workflow are replicated for its submissions.
You can override workflow tag value using geni submission create.
Or even changing using geni submission update.
New workflow versions already inherent existing tags.
Tag at registration
geni workflow create \ --workflow-name wgs-germline \ --workflow-version v2.1.0 \ --file wgs-germline.zip \ --tag Client=Hospital \ --tag Project=PROADEvery run of wgs-germline from now on carries Client=Hospital and Project=PROAD.
Change them later
geni workflow update wgs-germline \ --edit-tag client=acme \ --add-tag Stage=PROD \ --remove-tag ProjectTags live on the workflow, not the version, so this applies to v1.0.0 and v2.1.0 alike.
Filter by them
geni workflow list --tag client=acme --show-tag stageRepeating --tag narrows the result to workflows carrying all the given tags.
--show-tag adds a tag as a column.
Details
A submission tag wins. If a submission passes --tag client=other, that value overrides
the workflow’s client for that run. Inheritance is a default, not a lock.
Keys must be registered first. As with submission tags, the key has to exist in the tag
registry, which only an administrator can add to. An unregistered key fails the request with
422.
geni tag create ClientRe-uploading a version never clears tags. Only the keys you supply are upserted; anything
you do not mention is left alone. That means pushing v2.2.0 of a workflow does not wipe the
labels you set six months ago. To actually remove one, use geni workflow update --remove-tag.
Attaching the label to the workflow moves that decision to the place where it is actually known: when you register the pipeline, you already know which client it belongs to.
Full details in the tagging guide.