Story #15455

Updated by Peter Amstutz 9 months ago

Currently all outputs go in the user's home project which is undesirable due to the amount of clutter created.

Change this to create a new sub project under <user> / Workflow runs / <Workflow name + date of run> where all outputs are placed by default (unless the user specifies something different). This will be implemented by the client.

h2. arvados-cwl-runner

Default behavior

# search for or create
If a container request is submitted without an owner_uuid and without submitted_by_container_uuid, the API server creates a project named "Workflow runs"
# Create
for the the container request.

The container gets
a project under it called <Workflow name + date new field, "runtime_project_uuid". This is set to the owner of run>
# Use
the container request that as project_uuid created the container.

Custom parent

# arvados-cwl-runner --parent "My project xyz"
# Search for (or create) project with that name
# Create
If a project container request has "submitted_by_container_uuid", get the container and create the request under it called <Workflow name + date of run> (unless --name was provided)
# Use that as project_uuid

If --project-uuid is provided, the behavior container in "submitted_by_container_uuid" doesn't exist (because it is unchanged from current.

h2. Workbench (2?)

# When running through workbench,
federated container) then create a new project named <Workflow name + date of run> under selected location and use that for --project-uuid (instead of create a stub container record with the selected location) remote container uuid and "runtime_project_uuid" set.