-
Notifications
You must be signed in to change notification settings - Fork 46
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
workspace: expose workspace choice to users #545
workspace: expose workspace choice to users #545
Comments
P.S. In the above, we might read |
IMO option 1 looks cleaner. I think the workspace is relevant enough to have its own section. Currently, we support some |
…flows spec files Closes reanahub/reana-client#545
…aml file It passes a workspace_root_path as a parameter to rwc Closes reanahub/reana-client#545
…aml file It passes a workspace_root_path as a parameter to rwc Closes reanahub/reana-client#545
Goes on top of reanahub/reana-client#545 PR set, and reanahub/reana#532 PR set Closes reanahub/reana-client#546
Goes on top of reanahub/reana-client#545 PR set, and reanahub/reana#532 PR set Closes reanahub/reana-client#546
Goes on top of reanahub/reana-client#545 PR set, and reanahub/reana#532 PR set Closes reanahub/reana-client#546
…aml file It passes a workspace_root_path as a parameter to rwc Closes reanahub/reana-client#545
Goes on top of reanahub/reana-client#545 PR set, and reanahub/reana#532 PR set Closes reanahub/reana-client#546
Now that we have an option to use several different POSIX workspaces where to run workflows, the users should be able to configure where they would like to run their given workflow. E.g. one workflow in the default place, another workflow in their EOS home, etc.
This configuration should be done in
reana.yaml
.Option 1: introduce new top-level section
We can introduce a new section in
reana.yaml
to express the concept of workspace. Pros: instead of just writing the POSIX path, we could store more information there, should we need it in the future. Also, the concept of workspace will stand out clearly. Cons: we would need to amend parsing and REST API protocols due to having new section.An example of how this could look like:
A future option could be:
Option 2: use existing
options
clauseWe have an option of not changing
reana.yaml
and simply use existing clauses, such as parameters or options. Parameters, such as temperature=20c and mass=10g, influence the research results, whilst options, such as cache=off, keep the physics results and only influence how the workflow is orchestrated. From this point of view, a choice of workspace is more an option than a parameter, since a good reproducible analysis should not depend on where it is run.Hence we could choose
options
. Pros: we only add some parameter, REST API could use existing vehicle. Cons: conceptually the notion of workspace would not stand out so clearly, the workspace configuration would be "hidden" amongst other options. Also, options can be set via CLI options (e.g.reana-client start -o foo=bar
) but this cannot be done for workspace, since it must be initialised before.Example:
A future option could be:
(The type is inferred from the beginning of the value. Or, if need be, more strings would be added, such as
workspace_type: s3
. This is basically "flattened" option 1 expressed viaoptions
clause.)Notes
Regardless of which option we shall choose, there is a certain default that should be used in case the user does not set anything. This default will be set by the cluster administrator, but this will be part of another issue.
The text was updated successfully, but these errors were encountered: