Skip to content

Configure a collection in the Web UI, in the API and the CLI

User story

As a workspace owner, I need to be able to change the properties of existing collections:

  • name: the name of the collection (only allowed for non-singleton collections)
  • full_history_retention_period, metadata_only_retention_period
  • key-value data: a simple text field with JSON data inside

Having proper dedicated fields to represent the data model of all the categories is out of scope for this feature.

Error handling

  • If the category matches a singleton collection, the name should be forced to "_" (and error out otherwise).
  • The key-value data should be validated against the collection's pydantic data model (if #923 is implemented first; otherwise, add this to that issue).
  • The system should notify a failure, when the given name is already used by an existing collection.

Implementation plan

  • Add the API to configure a collection (!2213 (merged))
  • Add a web UI to configure a collection
  • Add a debusine-client interface to configure a collection

Open questions

  • None at this point.

Notes

This issue description can be modified to integrate feedback from comments and from associated merge requests.

Edited by Colin Watson
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information