Project

General

Profile

Actions

Feature #12917

open

Support ?include=container_uuid for container request lists and group contents

Added by Bryan Cosca over 6 years ago. Updated 9 days ago.

Status:
New
Priority:
Normal
Assigned To:
Category:
API
Story points:
-

Description

Users should be able to see the exit code or state=[“Queued”, “Locked”, “Running”, “Cancelled” and “Complete”] from the container_request api method, rather than having to go another layer deeper to the container api method.

Proposed solution

Add a general "include" option to the index (list) method.

include=container includes the contents of the record associated with container_uuid

Can only be used on fields ending in _uuid

A query like this would return:

?include=container

{
  "items": [
    {
      "kind": "arvados#container_request",
      "uuid": "abc-123",
      "container_uuid": "xyz-123" 
      ...
    }
  ],
  "includes": [
    {
      "uuid": "xyz-123",
      "state": "Completed",
      "exit_code": 0,
      ...
    }
  ]
}

Initially we will only adopt this syntax but initially limiting the implementation to only container requests. This should be implemented on the controller side.

If used for anything other than include=container on container_request it should return an API error.

Discussion points for future:

  • selecting fields in the includes
  • Permission enforcement. Permission to read a container is based on permission to read the container_request, but this is not true generally. For example, permission to read a container request doesn't grant permission to read output_uuid.
  • Straightforward to set up a join when the _uuid field points to exactly one record type (only collections, only containers, etc) but more complex when it can point to multiple (owner_uuid, head/tail_uuid on links)

Subtasks 1 (1 open0 closed)

Task #13355: ReviewNewStephen SmithActions

Related issues

Related to Arvados Workbench 2 - Bug #15672: List of subprocesses limited in process viewResolvedLucas Di Pentima12/16/2019Actions
Has duplicate Arvados - Idea #13145: Include container status & exit code in container request responseDuplicateActions
Blocks Arvados - Idea #13327: More responsive page loads with API ?include=container_uuidNewActions
Actions

Also available in: Atom PDF