While implementing workspace retention rules population to the database (see this PR), all the logic to parse and validate the rules had to be kept inside reana-server, since when we restart a workflow all the workflow cloning is done there (while it technically should be done in r-w-c).
It would be good to move all of this logic (workspace retention rules parsing and workflow cloning when restarting, maybe potentially something else) to reana-workflow-controller to keep a clear boundary between reana-server and reana-workflow-controller.
While implementing workspace retention rules population to the database (see this PR), all the logic to parse and validate the rules had to be kept inside reana-server, since when we restart a workflow all the workflow cloning is done there (while it technically should be done in r-w-c).
It would be good to move all of this logic (workspace retention rules parsing and workflow cloning when restarting, maybe potentially something else) to reana-workflow-controller to keep a clear boundary between reana-server and reana-workflow-controller.