Project

General

Profile

Actions

Feature #7816

closed

[Crunch2] Execute minimal container spec with logging

Added by Tom Clegg over 8 years ago. Updated over 8 years ago.

Status:
Resolved
Priority:
Normal
Assigned To:
Category:
Crunch
Target version:
Story points:
1.0
Release:
Release relationship:
Auto

Description

This program runs on a worker host. It will be invoked by the future Crunch2 dispatcher. Its responsibilities include:

  1. Retrieve the Container record with the given UUID
  2. Load the specified docker image from Keep
  3. Translate the Container specification to a "docker run" command line or invoke the container via Docker SDK
  4. Forward the executor's logging and container's stdout, stderr to the Arvados API as Log entries and to a collection
  5. Update the Container record to reflect the actual state of the container (progress/completion), exit code, logs
  6. Testing for all above features

Not included in this story:

  • Start arv-mount on the host (if required by the container) and shutting it down when the container exits (#8015)
  • Impose runtime constraints, using "docker run" arguments and other facilities (#8017)
  • Report resources used by the container while it runs (presumably using crunchstat) (#8016)
  • Save the container's output in the Container record (except logs) (#8020)
  • log throttling (#8019)
  • retry failure (#8018)

See Containers API


Files

crunch-exec-test-log-b702c49.txt (1.55 KB) crunch-exec-test-log-b702c49.txt Tom Clegg, 01/06/2016 04:35 PM

Subtasks 6 (0 open6 closed)

Task #8089: Review 7816-exit-codeResolvedPeter Amstutz11/17/2015Actions
Task #8044: Review 7816-crunch2-execResolvedTom Clegg11/17/2015Actions
Task #8046: Review testing pseudocodeResolvedTom Clegg11/17/2015Actions
Task #8043: Write testsResolvedPeter Amstutz11/17/2015Actions
Task #8042: Implement executorResolvedPeter Amstutz11/17/2015Actions
Task #8045: Define test casesResolvedPeter Amstutz11/17/2015Actions

Related issues

Related to Arvados - Feature #6518: [Crunch] [Crunch2] Dispatch containers via slurmResolvedRadhika Chippada07/08/2015Actions
Blocked by Arvados - Idea #6429: [API] [Crunch2] Implement "containers" and "container requests" tables, models and controllersResolvedPeter Amstutz12/03/2015Actions
Actions

Also available in: Atom PDF