From 30bd118e37f942761481cd7b04f473df04be9aad Mon Sep 17 00:00:00 2001 From: yy Date: Mon, 13 May 2024 16:12:45 +0800 Subject: [PATCH 1/4] chore: update sealos cloud cluster image to adapt desktop using yaml as config. Signed-off-by: yy Signed-off-by: yy --- deploy/cloud/scripts/init.sh | 21 ++----- frontend/desktop/deploy/Kubefile | 5 ++ .../desktop/deploy/manifests/configmap.yaml | 55 ------------------- .../deploy/manifests/configmap.yaml.tmpl | 23 ++++---- frontend/desktop/deploy/scripts/init.sh | 5 +- 5 files changed, 25 insertions(+), 84 deletions(-) delete mode 100644 frontend/desktop/deploy/manifests/configmap.yaml rename deploy/cloud/etc/sealos/desktop-config.yaml => frontend/desktop/deploy/manifests/configmap.yaml.tmpl (77%) diff --git a/deploy/cloud/scripts/init.sh b/deploy/cloud/scripts/init.sh index 2ea6070779e..b13931a41c8 100644 --- a/deploy/cloud/scripts/init.sh +++ b/deploy/cloud/scripts/init.sh @@ -35,9 +35,6 @@ function prepare { # gen regionUID if not set or not found in secret gen_regionUID - # mutate desktop config - mutate_desktop_config - # create tls secret create_tls_secret } @@ -152,18 +149,6 @@ function gen_regionUID(){ fi } -function mutate_desktop_config() { - # mutate etc/sealos/desktop-config.yaml by using mongodb uri and two random string - sed -i -e "s;;$(echo -n "${mongodbUri}/sealos-auth?authSource=admin");" etc/sealos/desktop-config.yaml - sed -i -e "s;;$(tr -cd 'a-z0-9' ;$(tr -cd 'a-z0-9' ;$(tr -cd 'a-z0-9' ;$saltKey;" etc/sealos/desktop-config.yaml - sed -i -e "s;;$(echo -n "${cockroachdbLocalUri}");" etc/sealos/desktop-config.yaml - sed -i -e "s;;$(echo -n "${cockroachdbGlobalUri}");" etc/sealos/desktop-config.yaml - sed -i -e "s;;$(echo -n "${localRegionUID}");" etc/sealos/desktop-config.yaml -} - function create_tls_secret { if grep -q $tlsCrtPlaceholder manifests/tls-secret.yaml; then echo "mock tls secret" @@ -182,7 +167,11 @@ function sealos_run_desktop { --env cloudPort="$cloudPort" \ --env certSecretName="wildcard-cert" \ --env passwordEnabled="true" \ - --config-file etc/sealos/desktop-config.yaml + --env passwordSalt="$saltKey" \ + --env regionUID="$localRegionUID" \ + --env databaseMongodbURI="${mongodbUri}/sealos-auth?authSource=admin" \ + --env databaseLocalCockroachURI="$cockroachdbLocalUri" \ + --env databaseGlobalCockroachURI="$cockroachdbGlobalUri" } function sealos_run_controller { diff --git a/frontend/desktop/deploy/Kubefile b/frontend/desktop/deploy/Kubefile index 19705c8fcbe..0c56343cb51 100644 --- a/frontend/desktop/deploy/Kubefile +++ b/frontend/desktop/deploy/Kubefile @@ -8,5 +8,10 @@ COPY scripts scripts ENV cloudDomain="127.0.0.1.nip.io" ENV cloudPort="" ENV certSecretName="wildcard-cert" +ENV regionUID="randomRegionUID" +ENV databaseMongodbURI="mongodb://localhost:27017" +ENV databaseGlobalCockroachdbURI="cloud" +ENV databaseLocalCockroachdbURI="cloud" +ENV passwordSalt="randomSalt" CMD ["bash scripts/init.sh"] diff --git a/frontend/desktop/deploy/manifests/configmap.yaml b/frontend/desktop/deploy/manifests/configmap.yaml deleted file mode 100644 index ae98deaea2d..00000000000 --- a/frontend/desktop/deploy/manifests/configmap.yaml +++ /dev/null @@ -1,55 +0,0 @@ -apiVersion: v1 -kind: ConfigMap -metadata: - name: desktop-frontend-config - namespace: sealos -data: - config.yaml : | - apiVersion: v1 - kind: ConfigMap - metadata: - name: desktop-frontend-config - namespace: sealos - data: - config.yaml : | - cloud: - domain: "{{ .cloudDomain }}" - port: "{{ .cloudPort }}" - regionUID: "" - certSecretName: "{{ .certSecretName }}" - common: - guideEnabled: "false" - apiEnabled: "false" - rechargeEnabled: "false" - cfSiteKey: "" - database: - mongodbURI: "" - globalCockroachdbURI: "" - regionalCockroachdbURI: "" - desktop: - layout: - title: "Sealos Cloud" - logo: "/logo.png" - backgroundImage: "/images/bg-blue.svg" - meta: - title: "Sealos Cloud" - description: "Sealos Cloud" - keywords: "Sealos Cloud" - scripts: [] - common: - githubStarEnabled: "true" - auth: - proxyAddress: "" - callbackURL: "https://{{ .cloudDomain }}{{ if .cloudPort }}:{{ .cloudPort }}{{ end }}/callback" - signUpEnabled: "true" - baiduToken: "" - invite: - enabled: "false" - jwt: - internal: "" - regional: "" - global: "" - idp: - password: - enabled: "true" - salt: "" \ No newline at end of file diff --git a/deploy/cloud/etc/sealos/desktop-config.yaml b/frontend/desktop/deploy/manifests/configmap.yaml.tmpl similarity index 77% rename from deploy/cloud/etc/sealos/desktop-config.yaml rename to frontend/desktop/deploy/manifests/configmap.yaml.tmpl index 6564d29b550..0a20d90f7a1 100644 --- a/deploy/cloud/etc/sealos/desktop-config.yaml +++ b/frontend/desktop/deploy/manifests/configmap.yaml.tmpl @@ -1,11 +1,10 @@ -apiVersion: apps.sealos.io/v1beta1 -kind: Config +apiVersion: v1 +kind: ConfigMap metadata: - name: secret -spec: - path: manifests/configmap.yaml - strategy: override - data: | + name: desktop-frontend-config + namespace: sealos +data: + config.yaml : | apiVersion: v1 kind: ConfigMap metadata: @@ -16,7 +15,7 @@ spec: cloud: domain: "{{ .cloudDomain }}" port: "{{ .cloudPort }}" - regionUID: "" + regionUID: "{{ .regionUID }}" certSecretName: "{{ .certSecretName }}" common: guideEnabled: "false" @@ -24,9 +23,9 @@ spec: rechargeEnabled: "false" cfSiteKey: "" database: - mongodbURI: "" - globalCockroachdbURI: "" - regionalCockroachdbURI: "" + mongodbURI: "{{ .databaseMongodbURI }}" + globalCockroachdbURI: "{{ .databaseGlobalCockroachdbURI }}" + regionalCockroachdbURI: "{{ .databaseLocalCockroachdbURI }}" desktop: layout: title: "Sealos Cloud" @@ -53,4 +52,4 @@ spec: idp: password: enabled: "true" - salt: "" \ No newline at end of file + salt: "{{ .idpPasswordSalt }}" \ No newline at end of file diff --git a/frontend/desktop/deploy/scripts/init.sh b/frontend/desktop/deploy/scripts/init.sh index 34834827549..f8df52ff96c 100644 --- a/frontend/desktop/deploy/scripts/init.sh +++ b/frontend/desktop/deploy/scripts/init.sh @@ -2,9 +2,12 @@ set -ex kubectl apply -f manifests/deploy.yaml -f manifests/rbac.yaml -f manifests/ingress.yaml cm_exists=$(kubectl get cm desktop-frontend-config -n sealos --ignore-not-found=true) -if [[ -n "cm_exists" ]]; then +if [[ -n "$cm_exists" ]]; then echo "desktop-frontend-config already exists, skip create desktop config" else echo "create desktop config" + sed -i -e "s;;$(tr -cd 'a-z0-9' ;$(tr -cd 'a-z0-9' ;$(tr -cd 'a-z0-9' Date: Mon, 13 May 2024 16:14:45 +0800 Subject: [PATCH 2/4] chore: update sealos cloud cluster image to adapt desktop using yaml as config. Signed-off-by: yy Signed-off-by: yy --- frontend/desktop/deploy/Kubefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/frontend/desktop/deploy/Kubefile b/frontend/desktop/deploy/Kubefile index 0c56343cb51..cb8685bde5f 100644 --- a/frontend/desktop/deploy/Kubefile +++ b/frontend/desktop/deploy/Kubefile @@ -9,9 +9,9 @@ ENV cloudDomain="127.0.0.1.nip.io" ENV cloudPort="" ENV certSecretName="wildcard-cert" ENV regionUID="randomRegionUID" -ENV databaseMongodbURI="mongodb://localhost:27017" -ENV databaseGlobalCockroachdbURI="cloud" -ENV databaseLocalCockroachdbURI="cloud" +ENV databaseMongodbURI="" +ENV databaseGlobalCockroachdbURI="" +ENV databaseLocalCockroachdbURI="" ENV passwordSalt="randomSalt" CMD ["bash scripts/init.sh"] From c0e30deffb5a3fdf5952f6dfcc4e74fa289e1c0e Mon Sep 17 00:00:00 2001 From: yy Date: Mon, 13 May 2024 16:15:42 +0800 Subject: [PATCH 3/4] chore: update sealos cloud cluster image to adapt desktop using yaml as config. Signed-off-by: yy Signed-off-by: yy --- frontend/desktop/deploy/manifests/configmap.yaml.tmpl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/desktop/deploy/manifests/configmap.yaml.tmpl b/frontend/desktop/deploy/manifests/configmap.yaml.tmpl index 0a20d90f7a1..1159bc6c2f0 100644 --- a/frontend/desktop/deploy/manifests/configmap.yaml.tmpl +++ b/frontend/desktop/deploy/manifests/configmap.yaml.tmpl @@ -52,4 +52,4 @@ data: idp: password: enabled: "true" - salt: "{{ .idpPasswordSalt }}" \ No newline at end of file + salt: "{{ .passwordSalt }}" \ No newline at end of file From fedc7706ce260a435ad0b65159e968779504c133 Mon Sep 17 00:00:00 2001 From: yy Date: Mon, 13 May 2024 16:17:37 +0800 Subject: [PATCH 4/4] chore: update sealos cloud cluster image to adapt desktop using yaml as config. Signed-off-by: yy Signed-off-by: yy --- deploy/cloud/scripts/init.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/deploy/cloud/scripts/init.sh b/deploy/cloud/scripts/init.sh index b13931a41c8..e1795eb750a 100644 --- a/deploy/cloud/scripts/init.sh +++ b/deploy/cloud/scripts/init.sh @@ -170,8 +170,8 @@ function sealos_run_desktop { --env passwordSalt="$saltKey" \ --env regionUID="$localRegionUID" \ --env databaseMongodbURI="${mongodbUri}/sealos-auth?authSource=admin" \ - --env databaseLocalCockroachURI="$cockroachdbLocalUri" \ - --env databaseGlobalCockroachURI="$cockroachdbGlobalUri" + --env databaseLocalCockroachdbURI="$cockroachdbLocalUri" \ + --env databaseGlobalCockroachdbURI="$cockroachdbGlobalUri" } function sealos_run_controller {