X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/e8dae47a3dead0a49cb60c1075b96a95ef8142e5..35d6c5a870aeff7bb2cbf6ec80d306debad872c1:/src/views/run-process-panel/run-process-advanced-form.tsx diff --git a/src/views/run-process-panel/run-process-advanced-form.tsx b/src/views/run-process-panel/run-process-advanced-form.tsx index 19beab6be3..0400b850a2 100644 --- a/src/views/run-process-panel/run-process-advanced-form.tsx +++ b/src/views/run-process-panel/run-process-advanced-form.tsx @@ -8,17 +8,32 @@ import { reduxForm, Field } from 'redux-form'; import { Grid } from '@material-ui/core'; import { TextField } from '~/components/text-field/text-field'; import { ExpandIcon } from '~/components/icon/icon'; +import * as IntInput from './inputs/int-input'; +import { min } from '~/validators/min'; +import { optional } from '~/validators/optional'; +import { SwitchField } from '~/components/switch-field/switch-field'; export const RUN_PROCESS_ADVANCED_FORM = 'runProcessAdvancedForm'; +export const OUTPUT_FIELD = 'output'; +export const RUNTIME_FIELD = 'runtime'; +export const RAM_FIELD = 'ram'; +export const VCPUS_FIELD = 'vcpus'; +export const KEEP_CACHE_RAM_FIELD = 'keep_cache_ram'; +export const API_FIELD = 'api'; + export interface RunProcessAdvancedFormData { - output: string; - runtime: string; + [OUTPUT_FIELD]?: string; + [RUNTIME_FIELD]?: number; + [RAM_FIELD]: number; + [VCPUS_FIELD]: number; + [KEEP_CACHE_RAM_FIELD]?: number; + [API_FIELD]?: boolean; } export const RunProcessAdvancedForm = reduxForm({ - form: RUN_PROCESS_ADVANCED_FORM + form: RUN_PROCESS_ADVANCED_FORM, })(() =>
@@ -29,17 +44,72 @@ export const RunProcessAdvancedForm = + + + + + + + label="VCPUs" + helperText="Number of cores to be used to run this process." + parse={IntInput.parse} + format={IntInput.format} + type='number' + required + validate={vcpusValidation} /> + + + + + +
); + +const ramValidation = [min(0)]; +const vcpusValidation = [min(1)]; +const keepCacheRamValidation = [optional(min(0))]; +const runtimeValidation = [optional(min(1))];