Merge branch '21128-toolbar-context-menu'
[arvados-workbench2.git] / src / models / container-request.ts
index 2a0e60ba9a4ae86c9d628359801f04c2dd1f71f1..d3adb03a92a435019f3a368cd36f0a822773f999 100644 (file)
@@ -8,37 +8,78 @@ import { RuntimeConstraints } from './runtime-constraints';
 import { SchedulingParameters } from './scheduling-parameters';
 
 export enum ContainerRequestState {
-  UNCOMMITTED = 'Uncommitted',
-  COMMITTED = 'Committed',
-  FINAL = 'Final',
+    UNCOMMITTED = 'Uncommitted',
+    COMMITTED = 'Committed',
+    FINAL = 'Final',
 }
 
 export interface ContainerRequestResource
-  extends Resource,
+    extends Resource,
     ResourceWithProperties {
-  command: string[];
-  containerCountMax: number;
-  containerCount: number;
-  containerImage: string;
-  containerUuid: string | null;
-  cumulativeCost: number;
-  cwd: string;
-  description: string;
-  environment: any;
-  expiresAt: string;
-  filters: string;
-  kind: ResourceKind.CONTAINER_REQUEST;
-  logUuid: string | null;
-  mounts: { [path: string]: MountType };
-  name: string;
-  outputName: string;
-  outputPath: string;
-  outputTtl: number;
-  outputUuid: string | null;
-  priority: number | null;
-  requestingContainerUuid: string | null;
-  runtimeConstraints: RuntimeConstraints;
-  schedulingParameters: SchedulingParameters;
-  state: ContainerRequestState;
-  useExisting: boolean;
+    command: string[];
+    containerCountMax: number;
+    containerCount: number;
+    containerImage: string;
+    containerUuid: string | null;
+    cumulativeCost: number;
+    cwd: string;
+    description: string;
+    environment: any;
+    expiresAt: string;
+    filters: string;
+    kind: ResourceKind.CONTAINER_REQUEST;
+    logUuid: string | null;
+    mounts: { [path: string]: MountType };
+    name: string;
+    outputName: string;
+    outputPath: string;
+    outputProperties: any;
+    outputStorageClasses: string[];
+    outputTtl: number;
+    outputUuid: string | null;
+    priority: number | null;
+    requestingContainerUuid: string | null;
+    runtimeConstraints: RuntimeConstraints;
+    schedulingParameters: SchedulingParameters;
+    state: ContainerRequestState;
+    useExisting: boolean;
 }
+
+// Until the api supports unselecting fields, we need a list of all other fields to omit mounts
+export const containerRequestFieldsNoMounts = [
+    "command",
+    "container_count_max",
+    "container_count",
+    "container_image",
+    "container_uuid",
+    "created_at",
+    "cumulative_cost",
+    "cwd",
+    "description",
+    "environment",
+    "etag",
+    "expires_at",
+    "filters",
+    "href",
+    "kind",
+    "log_uuid",
+    "modified_at",
+    "modified_by_client_uuid",
+    "modified_by_user_uuid",
+    "name",
+    "output_name",
+    "output_path",
+    "output_properties",
+    "output_storage_classes",
+    "output_ttl",
+    "output_uuid",
+    "owner_uuid",
+    "priority",
+    "properties",
+    "requesting_container_uuid",
+    "runtime_constraints",
+    "scheduling_parameters",
+    "state",
+    "use_existing",
+    "uuid",
+];