diff --git a/app/react/edge/components/EdgeScriptForm/EdgeScriptForm.tsx b/app/react/edge/components/EdgeScriptForm/EdgeScriptForm.tsx index cc8e2bc77..411acb5c2 100644 --- a/app/react/edge/components/EdgeScriptForm/EdgeScriptForm.tsx +++ b/app/react/edge/components/EdgeScriptForm/EdgeScriptForm.tsx @@ -19,6 +19,7 @@ const edgePropertiesFormInitialValues: ScriptFormValues = { edgeGroupsIds: [], group: 0, tagsIds: [], + edgeIdGenerator: '', }; interface Props { @@ -45,6 +46,7 @@ export function EdgeScriptForm({ initialValues={edgePropertiesFormInitialValues} validationSchema={() => validationSchema(isNomadTokenVisible)} onSubmit={() => {}} + validateOnMount > {({ values, setFieldValue }) => ( <> diff --git a/app/react/edge/components/EdgeScriptForm/EdgeScriptForm.validation.tsx b/app/react/edge/components/EdgeScriptForm/EdgeScriptForm.validation.tsx index b67158842..0811485f3 100644 --- a/app/react/edge/components/EdgeScriptForm/EdgeScriptForm.validation.tsx +++ b/app/react/edge/components/EdgeScriptForm/EdgeScriptForm.validation.tsx @@ -6,6 +6,13 @@ export function validationSchema(isNomadTokenVisible?: boolean) { return object().shape({ allowSelfSignedCertificates: boolean(), envVars: string(), + edgeIdGenerator: string() + .required('Edge ID Generator is required') + .test( + 'valid edge id generator', + 'edge id generator cannot be empty', + (value) => !!(value && value.length) + ), ...nomadValidation(isNomadTokenVisible), }); } diff --git a/app/react/edge/components/EdgeScriptForm/EdgeScriptSettingsFieldset.tsx b/app/react/edge/components/EdgeScriptForm/EdgeScriptSettingsFieldset.tsx index 1b1c3adbe..eb62dbb72 100644 --- a/app/react/edge/components/EdgeScriptForm/EdgeScriptSettingsFieldset.tsx +++ b/app/react/edge/components/EdgeScriptForm/EdgeScriptSettingsFieldset.tsx @@ -24,7 +24,8 @@ export function EdgeScriptSettingsFieldset({ hideIdGetter, showMetaFields, }: Props) { - const { values, setFieldValue } = useFormikContext(); + const { values, setFieldValue, errors } = + useFormikContext(); return ( <> @@ -50,8 +51,10 @@ export function EdgeScriptSettingsFieldset({ <> ;