Merge branch 'master'
[arvados-workbench2.git] / src / models / container.ts
1 // Copyright (C) The Arvados Authors. All rights reserved.
2 //
3 // SPDX-License-Identifier: AGPL-3.0
4
5 import { Resource, ResourceKind } from "./resource";
6 import { MountType } from '~/models/mount-types';
7 import { RuntimeConstraints } from "~/models/runtime-constraints";
8 import { SchedulingParameters } from './scheduling-parameters';
9
10 export enum ContainerState {
11     QUEUED = 'Queued',
12     LOCKED = 'Locked',
13     RUNNING = 'Running',
14     COMPLETE = 'Complete',
15     CANCELLED = 'Cancelled',
16 }
17
18 export interface ContainerResource extends Resource {
19     kind: ResourceKind.CONTAINER;
20     state: string;
21     startedAt: string | null;
22     finishedAt: string | null;
23     log: string | null;
24     environment: {};
25     cwd: string;
26     command: string[];
27     outputPath: string;
28     mounts: MountType[];
29     runtimeConstraints: RuntimeConstraints;
30     schedulingParameters: SchedulingParameters;
31     output: string | null;
32     containerImage: string;
33     progress: number;
34     priority: number;
35     exitCode: number | null;
36     authUuid: string | null;
37     lockedByUuid: string | null;
38 }