| # |
| # Licensed to the Apache Software Foundation (ASF) under one or more |
| # contributor license agreements. See the NOTICE file distributed with |
| # this work for additional information regarding copyright ownership. |
| # The ASF licenses this file to You under the Apache License, Version 2.0 |
| # (the "License"); you may not use this file except in compliance with |
| # the License. You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| # |
| |
| # replica count for dev |
| replicaCount: 1 |
| imageTag: v0.18.1-beta3 |
| |
| #the common environments for all pods |
| envs: |
| TZ: "UTC" |
| |
| mysql: |
| # if use external mysql server, please set true |
| # by default using false, chart will create a single mysql instance |
| useExternal: false |
| |
| # the external mysql server address |
| externalServer: 127.0.0.1 |
| |
| # external mysql port |
| externalPort: 3306 |
| |
| # the username for devlake database |
| username: merico |
| |
| # the password for devlake database |
| password: merico |
| |
| # the database for devlake |
| database: lake |
| |
| # root password for mysql, only used when use_external=false |
| rootPassword: admin |
| |
| # storage for mysql |
| storage: |
| # pvc or hostpath |
| type: pvc |
| # the storage class for pv, leave empty will using default |
| class: "" |
| size: 50Gi |
| hostPath: /devlake/mysql/data |
| |
| # image for mysql |
| image: |
| repository: mysql |
| tag: 8 |
| pullPolicy: IfNotPresent |
| |
| # resources config for mysql if have |
| resources: {} |
| |
| # nodeSelector config for mysql if have |
| nodeSelector: {} |
| |
| # tolerations config for mysql if have |
| tolerations: [] |
| |
| # affinity config for mysql if have |
| affinity: {} |
| |
| extraLabels: {} |
| |
| securityContext: {} |
| |
| containerSecurityContext: {} |
| |
| service: |
| type: "ClusterIP" |
| nodePort: "" |
| |
| # pgsql: |
| # # if use external pgsql server, please set true |
| # # by default using false, chart will create a single pgsql instance |
| # useExternal: false |
| |
| # # the external pgsql server address |
| # externalServer: 127.0.0.1 |
| |
| # # external pgsql port |
| # externalPort: 5432 |
| # # the username for devlake database |
| # username: merico |
| |
| # # the password for devlake database |
| # password: merico |
| |
| # # the database for devlake |
| # database: lake |
| |
| # # storage for pgsql |
| # storage: |
| # # the storage class for pv, leave empty will using default |
| # class: "" |
| # size: 5Gi |
| |
| # # image for pgsql |
| # image: |
| # repository: postgres |
| # tag: 14.5 |
| # pullPolicy: IfNotPresent |
| |
| # # resources config for pgsql if have |
| # resources: {} |
| |
| # # nodeSelector config for pgsql if have |
| # nodeSelector: {} |
| |
| # # tolerations config for pgsql if have |
| # tolerations: [] |
| |
| # # affinity config for pgsql if have |
| # affinity: {} |
| |
| # extraLabels: {} |
| |
| # securityContext: {} |
| |
| # containerSecurityContext: {} |
| |
| # dependency chart values |
| grafana: |
| enabled: true |
| #if grafana enabled is false, then external url should be provided |
| external: |
| url: "" |
| image: |
| repository: devlake.docker.scarf.sh/apache/devlake-dashboard |
| tag: v0.18.1-beta3 |
| grafana.ini: |
| server: |
| root_url: "%(protocol)s://%(domain)s/grafana" |
| #the secret name should be as same as .Values.option.connectionSecretName |
| envFromSecrets: |
| - name: "devlake-mysql-auth" |
| #keep grafana timezone same as other pods, which is set by .Values.envs.TZ |
| env: |
| TZ: "UTC" |
| |
| lake: |
| image: |
| repository: devlake.docker.scarf.sh/apache/devlake |
| pullPolicy: Always |
| # defaults to imageTag; if set, lake.image.tag will override imageTag |
| # tag: |
| # storage for config |
| port: 8080 |
| envs: |
| - name: API_TIMEOUT |
| value: "120s" |
| - name: API_RETRY |
| value: "3" |
| - name: API_REQUESTS_PER_HOUR |
| value: "10000" |
| - name: PIPELINE_MAX_PARALLEL |
| value: "1" |
| - name: IN_SECURE_SKIP_VERIFY |
| value: "false" |
| - name: LOGGING_DIR |
| value: "/app/logs" |
| # debug, info, warn, error |
| - name: LOGGING_LEVEL |
| value: "info" |
| |
| encryptionSecret: |
| # The name of secret which contains keys named ENCRYPTION_SECRET |
| secretName: "" |
| # if secretName is empty, secret should be set |
| # you can generate the encryption secret via cmd `openssl rand -base64 2000 | tr -dc 'A-Z' | fold -w 128 | head -n 1` |
| secret: "" |
| autoCreateSecret: true |
| |
| # If hostNetwork is true, then dnsPolicy is set to ClusterFirstWithHostNet |
| hostNetwork: false |
| |
| resources: {} |
| |
| nodeSelector: {} |
| |
| tolerations: [] |
| |
| affinity: {} |
| |
| extraLabels: {} |
| |
| securityContext: {} |
| |
| containerSecurityContext: {} |
| |
| ui: |
| image: |
| repository: devlake.docker.scarf.sh/apache/devlake-config-ui |
| pullPolicy: Always |
| # defaults to imageTag; if set, lake.image.tag will override imageTag |
| # tag: |
| resources: {} |
| |
| nodeSelector: {} |
| |
| tolerations: [] |
| |
| affinity: {} |
| |
| basicAuth: |
| enabled: false |
| user: admin |
| password: admin |
| autoCreateSecret: true |
| secretName: "" |
| |
| extraLabels: {} |
| |
| ## SecurityContext holds pod-level security attributes and common container settings. |
| ## This defaults to non root user with uid 101 and gid 1000. *v1.PodSecurityContext false |
| ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ |
| securityContext: |
| {} |
| # fsGroup: 101 |
| # runAsGroup: 1000 |
| # runAsNonRoot: true |
| # runAsUser: 101 |
| |
| ## K8s containers' Security Context |
| ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container |
| containerSecurityContext: |
| {} |
| # allowPrivilegeEscalation: false |
| # capabilities: |
| # drop: |
| # - all |
| |
| # alpine image for some init containers |
| alpine: |
| image: |
| repository: alpine |
| tag: 3.16 |
| pullPolicy: IfNotPresent |
| |
| service: |
| # service type: NodePort/ClusterIP |
| type: NodePort |
| # node port for devlake-ui if NodePort is enabled |
| uiPort: 32001 |
| |
| ingress: |
| enabled: false |
| enableHttps: false |
| # Set to false if you want to use a different ingress controller |
| useDefaultNginx: true |
| # ingress class name, example: alb for AWS load balancer controller |
| className: |
| # domain name for hosting devlake, must be set if ingress is enabled |
| hostname: localhost |
| # annotations required for your ingress controller; see the examples below |
| # for nginx, use the first two lines of annotations |
| # for alb (w/ external-dns), use the last 5 (6) lines of annotations |
| annotations: |
| {} |
| # kubernetes.io/ingress.class: nginx |
| # kubernetes.io/tls-acme: "true" |
| # |
| # alb.ingress.kubernetes.io/actions.ssl-redirect: '{"Type": "redirect", "RedirectConfig": { "Protocol": "HTTPS", "Port": "443", "StatusCode": "HTTP_301"}}' |
| # alb.ingress.kubernetes.io/certificate-arn: arn:aws:acm:us-east-2:xxx:certificate/xxx-xxx-xxx |
| # alb.ingress.kubernetes.io/listen-ports: '[{"HTTPS":443}, {"HTTP":80}]' |
| # alb.ingress.kubernetes.io/scheme: internet-facing |
| # alb.ingress.kubernetes.io/target-type: ip |
| # external-dns.alpha.kubernetes.io/hostname: www.example.com |
| |
| # url prefix, not works right now, keep "/" |
| prefix: / |
| # if using https provides the certificates secret name |
| tlsSecretName: "" |
| # ingress http port |
| httpPort: 80 |
| # ingress https port |
| httpsPort: 443 |
| |
| option: |
| # database type, supported: [mysql] |
| database: mysql |
| # the existing k8s secret name of db connection auth. The secret name should be as same as .Values.grafana.envFromSecret |
| connectionSecretName: "devlake-mysql-auth" |
| autoCreateSecret: true |