From a15af9c17530c89849617cf4eac0ecf099947657 Mon Sep 17 00:00:00 2001 From: ackintosh Date: Tue, 13 Dec 2022 08:16:48 +0900 Subject: [PATCH 1/3] Create efs mount point only if needed --- k8s/eks/bash/functions.sh | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/k8s/eks/bash/functions.sh b/k8s/eks/bash/functions.sh index 3a23a651..87a77d27 100644 --- a/k8s/eks/bash/functions.sh +++ b/k8s/eks/bash/functions.sh @@ -291,9 +291,12 @@ aws_get_sg_id(){ } aws_create_efs_mount_point(){ - aws efs create-mount-target --file-system-id $efs_fs_id --subnet-id $subnet_id --security-group $efs_sg_id --region $REGION + mnt_target_id=$(aws efs describe-mount-targets --region $REGION --file-system-id $efs_fs_id | jq -r ".MountTargets[] | .MountTargetId") + if [[ -z "${mnt_target_id}" ]] + then + aws efs create-mount-target --file-system-id $efs_fs_id --subnet-id $subnet_id --security-group $efs_sg_id --region $REGION + fi efs_dns=$efs_fs_id.efs.$REGION.amazonaws.com - } create_cm_efs(){ From d5895b842071c942b392d18a07ef70b859758430 Mon Sep 17 00:00:00 2001 From: ackintosh Date: Wed, 14 Dec 2022 08:47:49 +0900 Subject: [PATCH 2/3] Create configmap only if needed --- k8s/eks/bash/functions.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/k8s/eks/bash/functions.sh b/k8s/eks/bash/functions.sh index 87a77d27..b4dc1fe2 100644 --- a/k8s/eks/bash/functions.sh +++ b/k8s/eks/bash/functions.sh @@ -300,7 +300,9 @@ aws_create_efs_mount_point(){ } create_cm_efs(){ - kubectl create configmap efs-provisioner --from-literal=file.system.id=$efs_fs_id --from-literal=aws.region=$REGION --from-literal=provisioner.name=testground.io/aws-efs + if ! kubectl get configmap | grep --quiet efs-provisioner; then + kubectl create configmap efs-provisioner --from-literal=file.system.id=$efs_fs_id --from-literal=aws.region=$REGION --from-literal=provisioner.name=testground.io/aws-efs + fi } create_efs_manifest(){ From e35d4ef9de3ef28b0841db297fb0a0e5f6f8d2a5 Mon Sep 17 00:00:00 2001 From: ackintosh Date: Fri, 16 Dec 2022 08:08:07 +0900 Subject: [PATCH 3/3] Run helm install only if needed --- k8s/eks/bash/functions.sh | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/k8s/eks/bash/functions.sh b/k8s/eks/bash/functions.sh index b4dc1fe2..dc7a58df 100644 --- a/k8s/eks/bash/functions.sh +++ b/k8s/eks/bash/functions.sh @@ -302,6 +302,8 @@ aws_create_efs_mount_point(){ create_cm_efs(){ if ! kubectl get configmap | grep --quiet efs-provisioner; then kubectl create configmap efs-provisioner --from-literal=file.system.id=$efs_fs_id --from-literal=aws.region=$REGION --from-literal=provisioner.name=testground.io/aws-efs + else + echo "EFS configmap already exists, skipping to the next step." fi } @@ -345,12 +347,20 @@ helm_redis_add_repo(){ } helm_infra_install_redis(){ - helm install testground-infra-redis --set auth.enabled=false --set master.nodeSelector='testground.node.role.infra: "true"' bitnami/redis + if ! helm ls | grep --quiet testground-infra-redis; then + helm install testground-infra-redis --set auth.enabled=false --set master.nodeSelector='testground.node.role.infra: "true"' bitnami/redis + else + echo "Helm testground-infra-redis already exists, skipping to the next step." + fi } helm_infra_install_influx_db(){ - helm install influxdb bitnami/influxdb -f $real_path/yaml/influxdb/values.yml --set image.tag=1.8.2 --set image.debug=true --version 2.6.1 -} + if ! helm ls | grep --quiet influxdb; then + helm install influxdb bitnami/influxdb -f $real_path/yaml/influxdb/values.yml --set image.tag=1.8.2 --set image.debug=true --version 2.6.1 + else + echo "Helm influxdb already exists, skipping to the next step." + fi +} tg_daemon_config_map(){ kubectl apply -f - <