apiVersion: apps/v1
kind: Deployment
metadata:
  labels:
    app: firefly
  name: firefly
  namespace: finance
spec:
  selector:
    matchLabels:
      app: firefly
  template:
    metadata:
      labels:
        app: firefly
    spec:
      containers:
      - image: fireflyiii/core:latest
        imagePullPolicy: Always
        name: firefly
        resources: {}
        ports:
        - containerPort: 8080
        env:
          - name: APP_ENV
            value: "local"
          - name: APP_KEY
            value: iKejRAlgwx2Y/fxdosXjABbNxNzEuJdl
          - name: DB_CONNECTION
            value: sqlite
          - name: APP_URL
            value: https://finance.kluster.moll.re
          - name: TRUSTED_PROXIES
            value: "**"
        volumeMounts:
        - mountPath: /var/www/html/storage/database
          name: firefly-database


      volumes:
      - name: firefly-database
        persistentVolumeClaim:
          claimName: firefly-database-nfs

---
apiVersion: v1
kind: Service
metadata:
  name: firefly-http
  namespace: finance
  labels:
    app: firefly-http

spec:
  type: ClusterIP
  ports:
  - port: 8080
    # name: http
  selector:
    app: firefly
---
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
  name: firefly-ingress
  namespace: finance
spec:
  entryPoints:
    - websecure
  routes:
    - match: Host(`finance.kluster.moll.re`)
      kind: Rule
      services:
        - name: firefly-http
          port: 8080
  tls:
    certResolver: default-tls