diff --git a/components/dashboard/application/advanced/cluster/modify-swarm-settings.tsx b/components/dashboard/application/advanced/cluster/modify-swarm-settings.tsx index 2cf26e2d2..d6de64500 100644 --- a/components/dashboard/application/advanced/cluster/modify-swarm-settings.tsx +++ b/components/dashboard/application/advanced/cluster/modify-swarm-settings.tsx @@ -70,14 +70,16 @@ const PlacementSwarmSchema = z }) .strict(); -const UpdateConfigSwarmSchema = z.object({ - Parallelism: z.number(), - Delay: z.number().optional(), - FailureAction: z.string().optional(), - Monitor: z.number().optional(), - MaxFailureRatio: z.number().optional(), - Order: z.string(), -}); +const UpdateConfigSwarmSchema = z + .object({ + Parallelism: z.number(), + Delay: z.number().optional(), + FailureAction: z.string().optional(), + Monitor: z.number().optional(), + MaxFailureRatio: z.number().optional(), + Order: z.string(), + }) + .strict(); const ReplicatedSchema = z .object({ @@ -92,12 +94,14 @@ const ReplicatedJobSchema = z }) .strict(); -const ServiceModeSwarmSchema = z.object({ - Replicated: ReplicatedSchema.optional(), - Global: z.object({}).optional(), - ReplicatedJob: ReplicatedJobSchema.optional(), - GlobalJob: z.object({}).optional(), -}); +const ServiceModeSwarmSchema = z + .object({ + Replicated: ReplicatedSchema.optional(), + Global: z.object({}).optional(), + ReplicatedJob: ReplicatedJobSchema.optional(), + GlobalJob: z.object({}).optional(), + }) + .strict(); const LabelsSwarmSchema = z.record(z.string()); @@ -191,40 +195,42 @@ export const AddSwarmSettings = ({ applicationId }: Props) => { useEffect(() => { if (data) { - console.log(data.healthCheckSwarm, null); form.reset({ - healthCheckSwarm: data.healthCheckSwarm || null, - restartPolicySwarm: data.restartPolicySwarm || null, - placementSwarm: data.placementSwarm || null, - updateConfigSwarm: data.updateConfigSwarm || null, - rollbackConfigSwarm: data.rollbackConfigSwarm || null, - modeSwarm: data.modeSwarm || null, - labelsSwarm: data.labelsSwarm || null, + healthCheckSwarm: data.healthCheckSwarm + ? JSON.stringify(data.healthCheckSwarm, null, 2) + : null, + restartPolicySwarm: data.restartPolicySwarm + ? JSON.stringify(data.restartPolicySwarm, null, 2) + : null, + placementSwarm: data.placementSwarm + ? JSON.stringify(data.placementSwarm, null, 2) + : null, + updateConfigSwarm: data.updateConfigSwarm + ? JSON.stringify(data.updateConfigSwarm, null, 2) + : null, + rollbackConfigSwarm: data.rollbackConfigSwarm + ? JSON.stringify(data.rollbackConfigSwarm, null, 2) + : null, + modeSwarm: data.modeSwarm + ? JSON.stringify(data.modeSwarm, null, 2) + : null, + labelsSwarm: data.labelsSwarm + ? JSON.stringify(data.labelsSwarm, null, 2) + : null, }); } - }, [form, form.formState.isSubmitSuccessful, form.reset, data]); + }, [form, form.reset, data]); const onSubmit = async (data: AddSwarmSettings) => { - console.log(data.restartPolicySwarm); await mutateAsync({ applicationId, - healthCheckSwarm: data.healthCheckSwarm - ? JSON.stringify(data.healthCheckSwarm) - : null, - restartPolicySwarm: data.restartPolicySwarm - ? JSON.stringify(data.restartPolicySwarm) - : null, - placementSwarm: data.placementSwarm - ? JSON.stringify(data.placementSwarm) - : null, - updateConfigSwarm: data.updateConfigSwarm - ? JSON.stringify(data.updateConfigSwarm) - : null, - rollbackConfigSwarm: data.rollbackConfigSwarm - ? JSON.stringify(data.rollbackConfigSwarm) - : null, - modeSwarm: data.modeSwarm ? JSON.stringify(data.modeSwarm) : null, - labelsSwarm: data.labelsSwarm ? JSON.stringify(data.labelsSwarm) : null, + healthCheckSwarm: data.healthCheckSwarm, + restartPolicySwarm: data.restartPolicySwarm, + placementSwarm: data.placementSwarm, + updateConfigSwarm: data.updateConfigSwarm, + rollbackConfigSwarm: data.rollbackConfigSwarm, + modeSwarm: data.modeSwarm, + labelsSwarm: data.labelsSwarm, }) .then(async () => { toast.success("Swarm settings updated"); @@ -242,8 +248,8 @@ export const AddSwarmSettings = ({ applicationId }: Props) => { Swarm Settings - - + + Swarm Settings Update certain settings using a json object. @@ -255,22 +261,27 @@ export const AddSwarmSettings = ({ applicationId }: Props) => {
( - + Health Check Check the interface