Added configmap
Edited values
This commit is contained in:
Richard Tomik
2025-03-18 12:10:02 +01:00
parent a10563b54b
commit 3d4cf1ae34
3 changed files with 117 additions and 11 deletions

View File

@ -1,7 +1,56 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ include "donetick.fullname" . }}-config
name: {{ include "donetick.fullname" . }}-configmap
labels:
{{- include "donetick.labels" . | nindent 4 }}
data: {}
data:
selfhosted.yaml: |
name: {{ .Values.config.name | quote }}
is_done_tick_dot_com: {{ .Values.config.is_done_tick_dot_com }}
is_user_creation_disabled: {{ .Values.config.is_user_creation_disabled }}
telegram:
token: {{ .Values.config.telegram.token | default "" | quote }}
pushover:
token: {{ .Values.config.pushover.token | default "" | quote }}
database:
type: {{ .Values.config.database.type | default "sqlite" | quote }}
migration: {{ .Values.config.database.migration }}
host: {{ .Values.config.database.host | default "secret" | quote }}
port: {{ .Values.config.database.port | default 5432 }}
user: {{ .Values.config.database.user | default "secret" | quote }}
password: {{ .Values.config.database.password | default "secret" | quote }}
name: {{ .Values.config.database.name | default "secret" | quote }}
jwt:
secret: {{ .Values.config.jwt.secret | quote }}
session_time: {{ .Values.config.jwt.session_time | default "168h" | quote }}
max_refresh: {{ .Values.config.jwt.max_refresh | default "168h" | quote }}
server:
port: {{ .Values.config.server.port | default 2021 }}
read_timeout: {{ .Values.config.server.read_timeout | default "10s" | quote }}
write_timeout: {{ .Values.config.server.write_timeout | default "10s" | quote }}
rate_period: {{ .Values.config.server.rate_period | default "60s" | quote }}
rate_limit: {{ .Values.config.server.rate_limit | default 300 }}
cors_allow_origins:
{{- range .Values.config.server.cors_allow_origins }}
- {{ . | quote }}
{{- end }}
serve_frontend: {{ .Values.config.server.serve_frontend | default true }}
scheduler_jobs:
due_job: {{ .Values.config.scheduler_jobs.due_job | default "30m" | quote }}
overdue_job: {{ .Values.config.scheduler_jobs.overdue_job | default "3h" | quote }}
pre_due_job: {{ .Values.config.scheduler_jobs.pre_due_job | default "3h" | quote }}
email:
host: {{ .Values.config.email.host | quote }}
port: {{ .Values.config.email.port | quote }}
key: {{ .Values.config.email.key | quote }}
email: {{ .Values.config.email.email | quote }}
appHost: {{ .Values.config.email.appHost | quote }}
oauth2:
client_id: {{ .Values.config.oauth2.client_id | quote }}
client_secret: {{ .Values.config.oauth2.client_secret | quote }}
auth_url: {{ .Values.config.oauth2.auth_url | quote }}
token_url: {{ .Values.config.oauth2.token_url | quote }}
user_info_url: {{ .Values.config.oauth2.user_info_url | quote }}
redirect_url: {{ .Values.config.oauth2.redirect_url | quote }}
name: {{ .Values.config.oauth2.name | quote }}

View File

@ -18,25 +18,27 @@ spec:
- name: {{ .Chart.Name }}
image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
command: ["/donetick-core"]
command: ["/donetick"]
ports:
- name: http
containerPort: 8000
containerPort: 2021
protocol: TCP
envFrom:
- configMapRef:
name: {{ include "donetick.fullname" . }}-config
env:
{{- range .Values.env }}
- name: {{ .name }}
value: {{ .value | quote }}
{{- end }}
volumeMounts:
- name: config
mountPath: /config
- name: data
mountPath: /usr/src/app/data
mountPath: /donetick-data
resources:
{{- toYaml .Values.resources | nindent 12 }}
volumes:
- name: config
configMap:
name: {{ include "donetick.fullname" . }}-configmap
- name: data
persistentVolumeClaim:
claimName: {{ include "donetick.fullname" . }}-data

View File

@ -10,7 +10,7 @@ replicaCount: 1
service:
type: ClusterIP
port: 8000
port: 2021
ingress:
enabled: true
@ -34,7 +34,9 @@ persistence:
env:
- name: DT_ENV
value: prod
value: selfhosted
- name: DT_SQLITE_PATH
value: /donetick-data/donetick.db
resources:
limits:
@ -42,4 +44,57 @@ resources:
memory: 512Mi
requests:
cpu: 100m
memory: 128Mi
memory: 128Mi
config:
name: "selfhosted"
is_done_tick_dot_com: false
is_user_creation_disabled: false
telegram:
token: ""
pushover:
token: ""
database:
type: "sqlite"
migration: true
# these are only required for postgres
host: "secret"
port: 5432
user: "secret"
password: "secret"
name: "secret"
jwt:
secret: "secret"
session_time: 168h
max_refresh: 168h
server:
port: 2021
read_timeout: 10s
write_timeout: 10s
rate_period: 60s
rate_limit: 300
cors_allow_origins:
- "http://localhost:5173"
- "http://localhost:7926"
# the below are required for the android app to work
- "https://localhost"
- "capacitor://localhost"
serve_frontend: true
scheduler_jobs:
due_job: 30m
overdue_job: 3h
pre_due_job: 3h
email:
host:
port:
key:
email:
appHost:
oauth2:
client_id:
client_secret:
auth_url:
token_url:
user_info_url:
redirect_url:
name: