MartinKirchner opened a new issue, #1438: URL: https://github.com/apache/answer/issues/1438
## Describe the bug If helm chart is deployed to use a non privileged port Apache Answer writes wrong port into config file. ## To Reproduce Steps to reproduce the behavior: 1. Deploy a MySQL database, create a database and a database user 2. Create a Kubernetes secret: `kubectl create secret generic answer-secrets --from-literal=db-user=apacheanswer --from-literal=db-password=... --from-literal=admin-user=... --from-literal=admin-password=... --from-literal=admin-email=...` 3. Prepare `values.yaml`: ``` # Overridden values for https://github.com/apache/answer/tree/main/charts replicaCount: 1 # Environment variables # Configure environment variables below # https://answer.apache.org/docs/env env: - name: INSTALL_PORT value: "8080" - name: LOG_LEVEL # [DEBUG INFO WARN ERROR] value: "INFO" # uncomment the below values to use AUTO_INSTALL and not have to go through the setup process. # Once used to do the initial setup, these variables won't be used moving forward. # You must at a minimum comment AUTO_INSTALL after initial setup to prevent an error about the database already being initiated. - name: AUTO_INSTALL value: "true" - name: DB_TYPE value: "mysql" - name: DB_HOST value: mysql - name: DB_NAME value: apacheanswer - name: DB_USERNAME valueFrom: secretKeyRef: name: answer-secrets key: db-user - name: DB_PASSWORD valueFrom: secretKeyRef: name: answer-secrets key: db-password - name: LANGUAGE value: "en-US" - name: SITE_NAME value: "The Unhandled Exception" - name: SITE_URL value: "https://example.org" - name: ADMIN_NAME valueFrom: secretKeyRef: name: answer-secrets key: admin-user - name: ADMIN_PASSWORD valueFrom: secretKeyRef: name: answer-secrets key: admin-password - name: ADMIN_EMAIL valueFrom: secretKeyRef: name: answer-secrets key: admin-email # Persistence for the /data volume # Without persistence, your uploads and config.yaml will not be remembered between restarts. persistence: enabled: true accessMode: ReadWriteMany size: 50Gi podSecurityContext: fsGroup: 1000 securityContext: capabilities: drop: - ALL readOnlyRootFilesystem: true runAsNonRoot: true runAsUser: 1000 runAsGroup: 1000 service: # Switch to port 8080 as we are running with as non-root port: 8080 ingress: enabled: true className: "haproxy" hosts: - host: example.org paths: - path: / pathType: ImplementationSpecific tls: [] resources: requests: cpu: 1 memory: 1Gi autoscaling: enabled: false minReplicas: 1 maxReplicas: 100 targetCPUUtilizationPercentage: 80 # targetMemoryUtilizationPercentage: 80 ``` 4. Deploy the chart: `helm upgrade apache-answer chart/ -f values.yaml --install` 5. Open the WebUI via the configured ingress ## Actual behavior * Pod generated an invalid config (using port 80 instead of the configured 8080) * Then pod tries to restarts * The pod ends in a crash loop ### Generated config file ``` apache-answer-645c989c98-qv7pm:/# cat /data/conf/config.yaml debug: false server: http: addr: 0.0.0.0:80 data: database: driver: mysql connection: user:password@tcp(mysql:3306)/apacheanswer cache: file_path: /data/cache/cache.db i18n: bundle_dir: /data/i18n service_config: upload_path: /data/uploads clean_up_uploads: true clean_orphan_uploads_period_hours: 48 purge_deleted_files_period_days: 30 swaggerui: show: true protocol: http host: 127.0.0.1 address: :80 ui: base_url: "" api_base_url: "" ``` ## Expected behavior * Config declares pod 8080 ``` server: http: addr: 0.0.0.0:8080 swaggerui: address: :8080 ``` * Apache Answer is configured correctly and starts properly. ## Platform - Device: Kubernetes - OS: n/a - Browser and version: n/a - Version: v1.7.0 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
