From 5370c2c66cab15a14c54f1beae5add22774b0634 Mon Sep 17 00:00:00 2001 From: 0oM4R Date: Thu, 24 Oct 2024 15:34:27 +0300 Subject: [PATCH] chore: add IsAlphanumericExpectUnderscore to k8s modules and caprover, allow undersocre in dashboard k8s validations --- packages/grid_client/src/modules/models.ts | 12 ++++++------ packages/playground/src/components/k8s_worker.vue | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/grid_client/src/modules/models.ts b/packages/grid_client/src/modules/models.ts index 3453640740..46b69580c2 100644 --- a/packages/grid_client/src/modules/models.ts +++ b/packages/grid_client/src/modules/models.ts @@ -153,7 +153,7 @@ class MachinesModel { } class AddMachineModel extends MachineModel { - @Expose() @IsString() @IsNotEmpty() @IsAlphanumeric() @MaxLength(NameLength) deployment_name: string; + @Expose() @IsString() @IsNotEmpty() @IsAlphanumericExpectUnderscore() @MaxLength(NameLength) deployment_name: string; @Expose() @IsString() @IsOptional() myceliumNetworkSeed?: string; } @@ -167,7 +167,7 @@ class MachinesGetModel extends BaseGetDeleteModel {} class MachinesDeleteModel extends BaseGetDeleteModel {} class KubernetesNodeModel { - @Expose() @IsString() @IsNotEmpty() @IsAlphanumeric() @MaxLength(NameLength) name: string; + @Expose() @IsString() @IsNotEmpty() @IsAlphanumericExpectUnderscore() @MaxLength(NameLength) name: string; @Expose() @IsInt() @Min(1) node_id: number; @Expose() @IsInt() @Min(1) cpu: number; @Expose() @Min(1024) memory: number; // in MB @@ -187,7 +187,7 @@ class KubernetesNodeModel { } class K8SModel { - @Expose() @IsString() @IsNotEmpty() @IsAlphanumeric() @MaxLength(NameLength) name: string; + @Expose() @IsString() @IsNotEmpty() @IsAlphanumericExpectUnderscore() @MaxLength(NameLength) name: string; @Expose() @IsString() @IsNotEmpty() secret: string; @Expose() @Type(() => NetworkModel) @ValidateNested() network: NetworkModel; @Expose() @Type(() => KubernetesNodeModel) @ValidateNested({ each: true }) masters: KubernetesNodeModel[]; @@ -202,13 +202,13 @@ class K8SGetModel extends BaseGetDeleteModel {} class K8SDeleteModel extends BaseGetDeleteModel {} class AddWorkerModel extends KubernetesNodeModel { - @Expose() @IsString() @IsNotEmpty() @IsAlphanumeric() @MaxLength(NameLength) deployment_name: string; + @Expose() @IsString() @IsNotEmpty() @IsAlphanumericExpectUnderscore() @MaxLength(NameLength) deployment_name: string; @Expose() @IsString() @IsOptional() myceliumNetworkSeed?: string; } class DeleteWorkerModel { - @Expose() @IsString() @IsNotEmpty() @IsAlphanumeric() @MaxLength(NameLength) deployment_name: string; - @Expose() @IsString() @IsNotEmpty() @IsAlphanumeric() @MaxLength(NameLength) name: string; + @Expose() @IsString() @IsNotEmpty() @IsAlphanumericExpectUnderscore() @MaxLength(NameLength) deployment_name: string; + @Expose() @IsString() @IsNotEmpty() @IsAlphanumericExpectUnderscore() @MaxLength(NameLength) name: string; } class ZDBModel { diff --git a/packages/playground/src/components/k8s_worker.vue b/packages/playground/src/components/k8s_worker.vue index 94f86dbd0d..4ae3d78445 100644 --- a/packages/playground/src/components/k8s_worker.vue +++ b/packages/playground/src/components/k8s_worker.vue @@ -6,7 +6,7 @@ validators.required('Name is required.'), validators.isLowercase('Name should consist of lowercase letters only.'), (name: string) => validators.isAlpha('Name must start with an alphabetical character.')(name[0]), - validators.isAlphanumeric('Name should consist of alphabets & numbers only.'), + validators.IsAlphanumericExpectUnderscore('Name should consist of letters ,numbers and underscores only.'), validators.minLength('Name minimum length is 2 chars.', 2), validators.maxLength('Name max length is 50 chars.', 50), ]"