--- # yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/helm.toolkit.fluxcd.io/helmrelease_v2beta2.json apiVersion: helm.toolkit.fluxcd.io/v2beta2 kind: HelmRelease metadata: name: &app mailrise namespace: default spec: interval: 30m chart: spec: chart: app-template version: 2.6.0 sourceRef: kind: HelmRepository name: bjw-s namespace: flux-system maxHistory: 2 install: createNamespace: true remediation: retries: 3 upgrade: cleanupOnFail: true remediation: retries: 3 uninstall: keepHistory: false values: defaultPodOptions: topologySpreadConstraints: - maxSkew: 1 topologyKey: kubernetes.io/hostname whenUnsatisfiable: DoNotSchedule labelSelector: matchLabels: app.kubernetes.io/name: *app controllers: main: replicas: 2 strategy: RollingUpdate annotations: reloader.stakater.com/auto: "true" containers: main: image: repository: docker.io/yoryan/mailrise tag: 1.4.0 env: TZ: ${TIMEZONE} envFrom: - secretRef: name: mailrise-secret resources: requests: cpu: 10m memory: 10Mi limits: memory: 200Mi service: main: type: LoadBalancer loadBalancerIP: "${CLUSTER_LB_MAILRISE}" externalTrafficPolicy: Local ports: http: port: 8025 ingress: main: enabled: true className: nginx annotations: hajimari.io/enable: "false" hosts: - host: &host "{{ .Release.Name }}.${SECRET_CLUSTER_DOMAIN}" paths: - path: / service: name: main port: http tls: - hosts: - *host persistence: config: enabled: true type: configMap name: mailrise-configmap globalMounts: - path: /etc/mailrise.conf subPath: mailrise.conf readOnly: true