From 1f087fe7ceae04ed37fe13e7eb000bed24c57204 Mon Sep 17 00:00:00 2001 From: Stavros Kois <47820033+stavros-k@users.noreply.github.com> Date: Sat, 15 Jan 2022 00:48:50 +0200 Subject: [PATCH] fix(guacamole-client): Use correct user on questions.yaml (#1719) * fix(guacamole-client): Use correct user on questions.yaml * some apps seems to not like ports >9999 * some rearrangements and a TODO note * should skip if the db already exists * remvoe todo note * those two are required * actually use the configmap * do it quietly --- charts/incubator/guacamole-client/Chart.yaml | 2 +- .../incubator/guacamole-client/questions.yaml | 38 ++++++----- charts/incubator/guacamole-client/values.yaml | 67 +++++++++++++------ docs/manual/default-ports.md | 2 +- 4 files changed, 68 insertions(+), 41 deletions(-) diff --git a/charts/incubator/guacamole-client/Chart.yaml b/charts/incubator/guacamole-client/Chart.yaml index 3d13f8ba238..eee28e94704 100644 --- a/charts/incubator/guacamole-client/Chart.yaml +++ b/charts/incubator/guacamole-client/Chart.yaml @@ -25,7 +25,7 @@ sources: - https://hub.docker.com/r/guacamole/guacamole - http://guacamole.incubator.apache.org/doc/gug/introduction.html type: application -version: 0.0.1 +version: 0.0.2 annotations: truecharts.org/catagories: | - utilities diff --git a/charts/incubator/guacamole-client/questions.yaml b/charts/incubator/guacamole-client/questions.yaml index 441743c11c2..cbc6e68d34c 100644 --- a/charts/incubator/guacamole-client/questions.yaml +++ b/charts/incubator/guacamole-client/questions.yaml @@ -87,12 +87,14 @@ questions: description: "The hostname of the guacd instance to use to establish remote desktop connections" schema: type: string + required: true default: "" - variable: GUACD_PORT label: "Guacd Port" description: "The port that Guacamole should use when connecting to guacd." schema: type: int + required: true default: 4822 # Include{containerConfig} @@ -125,6 +127,11 @@ questions: schema: type: string default: "" + - variable: TOTP_PERIOD + label: "TOTP Period (Leave blank for default)" + schema: + type: string + default: "" - variable: TOTP_DIGITS label: "TOTP Digits" schema: @@ -139,11 +146,6 @@ questions: description: "7" - value: "8" description: "8" - - variable: TOTP_PERIOD - label: "TOTP Period (Leave blank for default)" - schema: - type: string - default: "" - variable: TOTP_MODE label: "TOTP Mode" schema: @@ -278,6 +280,16 @@ questions: schema: type: string default: "" + - variable: CAS_GROUP_LDAP_BASE_DN + label: "CAS Group LDAP Base DN" + schema: + type: string + default: "" + - variable: CAS_GROUP_LDAP_ATTRIBUTE + label: "CAS Group LDAP Attribute" + schema: + type: string + default: "" - variable: CAS_GROUP_FORMAT label: "CAS Group Format" schema: @@ -290,16 +302,6 @@ questions: description: "plain" - value: "ldap" description: "ldap" - - variable: CAS_GROUP_LDAP_BASE_DN - label: "CAS Group LDAP Base DN" - schema: - type: string - default: "" - - variable: CAS_GROUP_LDAP_ATTRIBUTE - label: "CAS Group LDAP Attribute" - schema: - type: string - default: "" - variable: openid group: "App Configuration" label: "OpenID Configuration" @@ -660,7 +662,7 @@ questions: description: "This port exposes the container port on the service" schema: type: int - default: 10080 + default: 9998 required: true - variable: advanced label: "Show Advanced settings" @@ -789,13 +791,13 @@ questions: description: "The UserID of the user running the application" schema: type: int - default: 568 + default: 1001 - variable: runAsGroup label: "runAsGroup" description: The groupID this App of the user running the application" schema: type: int - default: 568 + default: 1001 - variable: fsGroup label: "fsGroup" description: "The group that should own ALL storage." diff --git a/charts/incubator/guacamole-client/values.yaml b/charts/incubator/guacamole-client/values.yaml index d236ea4ae11..dea66ef2f57 100644 --- a/charts/incubator/guacamole-client/values.yaml +++ b/charts/incubator/guacamole-client/values.yaml @@ -14,7 +14,7 @@ service: main: ports: main: - port: 10080 + port: 9998 targetPort: 8080 env: @@ -24,6 +24,10 @@ env: GUACD_HOSTNAME: "localhost" GUACD_PORT: 4822 +envFrom: + - configMapRef: + name: guacamole-client-env + totp: TOTP_ENABLED: false # TOTP_ISSUER: "Apache Guacamole" @@ -190,24 +194,36 @@ initContainers: for i in {1..10}; do pg_isready -t 5 -h $POSTGRES_HOSTNAME -d $POSTGRES_DATABASE -U $POSTGRES_USER -p $POSTGRES_PORT; if [ $? -eq 0 ]; - then echo "DB is ready!"; + then + echo "DB is ready!"; DBREADY=1; break; - else echo "DB not ready yet."; + else + echo "DB not ready yet."; fi; echo "Waiting..."; sleep 5; done; if [ $DBREADY -eq 1 ]; - then echo "Initializing DB's schema..."; - psql -h $POSTGRES_HOSTNAME -d $POSTGRES_DATABASE -U $POSTGRES_USER -p $POSTGRES_PORT -a -w -f /initdbdata/initdb.sql; - if [ $? -eq 0 ]; - then echo "DB's schema initialized successfully!"; - exit 0; - else echo "DB's schema failed to initialize."; - exit 1; - fi; - else echo "DB failed to start."; + then + psql -h $POSTGRES_HOSTNAME -d $POSTGRES_DATABASE -U $POSTGRES_USER -p $POSTGRES_PORT -q -c 'SELECT * FROM public.guacamole_user'; + if [ $? -eq 0 ]; + then + echo "DB already initialized. Skipping..."; + else + echo "Initializing DB's schema..."; + psql -h $POSTGRES_HOSTNAME -d $POSTGRES_DATABASE -U $POSTGRES_USER -p $POSTGRES_PORT -a -w -f /initdbdata/initdb.sql; + if [ $? -eq 0 ]; + then + echo "DB's schema initialized successfully!"; + exit 0; + else + echo "DB's schema failed to initialize."; + exit 1; + fi; + fi; + else + echo "DB failed to start."; fi; # Until they release an image with the updated driver, we need to manually replace it. @@ -227,24 +243,31 @@ initContainers: - > echo "Checing postgresql driver version..."; if [ -e /opt/guacamole/postgresql/postgresql-42.2.24.jre7.jar ]; - then echo "Version found is correct."; + then + echo "Version found is correct."; exit 0; - else echo "Old version found. Will try to download a known-to-work version."; + else + echo "Old version found. Will try to download a known-to-work version."; echo "Downloading (postgresql-42.2.24.jre7.jar)..."; curl -L "https://jdbc.postgresql.org/download/postgresql-42.2.24.jre7.jar" > "/opt/guacamole/postgresql-hack/postgresql-42.2.24.jre7.jar"; if [ -e /opt/guacamole/postgresql-hack/postgresql-42.2.24.jre7.jar ]; - then echo "Downloaded successfully!"; + then + echo "Downloaded successfully!"; cp -r /opt/guacamole/postgresql/* /opt/guacamole/postgresql-hack/; if [ -e /opt/guacamole/postgresql-hack/postgresql-9.4-1201.jdbc41.jar ]; - then echo "Removing old version... (postgresql-9.4-1201.jdbc41.jar)"; + then + echo "Removing old version... (postgresql-9.4-1201.jdbc41.jar)"; rm "/opt/guacamole/postgresql-hack/postgresql-9.4-1201.jdbc41.jar"; if [ $? -eq 0 ]; - then echo "Removed successfully!"; - else "Failed to remove."; + then + echo "Removed successfully!"; + else + echo "Failed to remove."; exit 1; fi; fi; - else echo "Failed to download."; + else + echo "Failed to download."; exit 1; fi; fi; @@ -264,6 +287,8 @@ initContainers: echo "Copying postgres driver into the final destination."; cp -r /opt/guacamole/postgresql-hack/* /opt/guacamole/postgresql/; if [ -e /opt/guacamole/postgresql/postgresql-42.2.24.jre7.jar ]; - then echo "Driver copied successfully!"; - else echo "Failed to copy the driver"; + then + echo "Driver copied successfully!"; + else + echo "Failed to copy the driver"; fi; diff --git a/docs/manual/default-ports.md b/docs/manual/default-ports.md index f613917935a..870aa0cc8c3 100644 --- a/docs/manual/default-ports.md +++ b/docs/manual/default-ports.md @@ -145,6 +145,7 @@ These defaults can of course be changed, but as we guarantee "sane, working defa | tvheadend | main | main | 9981 | TCP | | | tvheadend | htsp | htsp | 9982 | TCP | | | teamspeak3 | voice | voice | 9987 | UDP | | +| guacamole-client | main | main | 9998 | TCP | | | stash | main | main | 9999 | TCP | | | ser2sock | main | main | 10000 | TCP | | | deconz | websocket | websocket | 10001 | TCP | | @@ -226,7 +227,6 @@ These defaults can of course be changed, but as we guarantee "sane, working defa | static | main | main | 10077 | TCP | | | twtxt | main | main | 10078 | TCP | | | emby | main | main | 10079 | TCP | | -| guacamole-client | main | main | 10080 | TCP | | | davos | main | main | 10081 | TCP | | | fireflyiii | main | main | 10082 | TCP | | | fossil | main | main | 10083 | TCP | |