Merge remote-tracking branch 'origin/main' into 18207-Workbench2-is-not-clearing...
[arvados-workbench2.git] / src / models / container-request.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 './runtime-constraints';
8 import { SchedulingParameters } from './scheduling-parameters';
9
10 export enum ContainerRequestState {
11     UNCOMMITTED = "Uncommitted",
12     COMMITTED = "Committed",
13     FINAL = "Final"
14 }
15
16 export interface ContainerRequestResource extends Resource {
17     kind: ResourceKind.CONTAINER_REQUEST;
18     name: string;
19     description: string;
20     properties: any;
21     state: ContainerRequestState;
22     requestingContainerUuid: string | null;
23     containerUuid: string | null;
24     containerCountMax: number;
25     mounts: {[path: string]: MountType};
26     runtimeConstraints: RuntimeConstraints;
27     schedulingParameters: SchedulingParameters;
28     containerImage: string;
29     environment: any;
30     cwd: string;
31     command: string[];
32     outputPath: string;
33     outputName: string;
34     outputTtl: number;
35     priority: number | null;
36     expiresAt: string;
37     useExisting: boolean;
38     logUuid: string | null;
39     outputUuid: string | null;
40     filters: string;
41     containerCount: number;
42 }