From: Michal Klobukowski Date: Thu, 27 Dec 2018 10:15:17 +0000 (+0100) Subject: Extend RunProcessAdvancedForm with numeric fields with runtime constraints values X-Git-Tag: 1.4.0~76^2~15 X-Git-Url: https://git.arvados.org/arvados-workbench2.git/commitdiff_plain/c47ae7ee3d75544d534b020e7e1c8c45e30f584e Extend RunProcessAdvancedForm with numeric fields with runtime constraints values Feature #master Arvados-DCO-1.1-Signed-off-by: Michal Klobukowski --- 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 19beab6b..5bec245a 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,34 @@ 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 { require } from '~/validators/require'; +import { min } from '~/validators/min'; +import { optional } from '~/validators/optional'; export const RUN_PROCESS_ADVANCED_FORM = 'runProcessAdvancedForm'; +const OUTPUT_FIELD = 'output'; +const RUNTIME_FIELD = 'runtime'; +const RAM_FIELD = 'ram'; +const VCPUS_FIELD = 'vcpus'; +const KEEP_CACHE_RAM_FIELD = 'keepCacheRam'; + export interface RunProcessAdvancedFormData { - output: string; - runtime: string; + [OUTPUT_FIELD]?: string; + [RUNTIME_FIELD]?: string; + [RAM_FIELD]: number; + [VCPUS_FIELD]: number; + [KEEP_CACHE_RAM_FIELD]?: number; } export const RunProcessAdvancedForm = reduxForm({ - form: RUN_PROCESS_ADVANCED_FORM + form: RUN_PROCESS_ADVANCED_FORM, + initialValues: { + [RAM_FIELD]: 1073741824, + [VCPUS_FIELD]: 1, + }, })(() =>
@@ -29,17 +46,56 @@ export const RunProcessAdvancedForm = + + + + + + + + +
); + +const ramValidation = [min(0)]; +const vcpusValidation = [min(1)]; +const keepCacheRamValdation = [optional(min(0))];