apiVersion: apps/v1 kind: StatefulSet metadata: name: mc-invites namespace: default spec: selector: matchLabels: app: mc-invites serviceName: mc-invites template: metadata: labels: app: mc-invites spec: volumes: - name: litestream-config configMap: name: litestream initContainers: - name: init-litestream image: litestream/litestream:0.3.8 args: ['restore', '-if-db-not-exists', '-if-replica-exists', '-v', 'wlm/db.sqlite3'] volumeMounts: - name: data mountPath: /wlm - name: litestream-config mountPath: /etc/litestream.yml subPath: litestream-config.yml env: - name: LITESTREAM_USERNAME valueFrom: secretKeyRef: name: litestream key: username - name: LITESTREAM_PASSWORD valueFrom: secretKeyRef: name: litestream key: password containers: - name: backend image: icr.gmem.ca/wlm:latest imagePullPolicy: Always resources: limits: memory: "128Mi" cpu: "500m" requests: memory: "64Mi" cpu: "100m" volumeMounts: - name: data mountPath: /wlm env: - name: WLM_DATABASE_PATH value: "/wlm/db.sqlite3" - name: AZURE_OAUTH_CLIENT_ID valueFrom: secretKeyRef: name: mc-invites-oauth key: client-id optional: false - name: AZURE_OAUTH_CLIENT_SECRET valueFrom: secretKeyRef: name: mc-invites-oauth key: client-secret optional: false ports: - containerPort: 8080 - name: litestream image: litestream/litestream:0.3.8 args: ['replicate'] volumeMounts: - name: data mountPath: /data - name: litestream-config mountPath: /etc/litestream.yml subPath: litestream-config.yml env: - name: LITESTREAM_USERNAME valueFrom: secretKeyRef: name: litestream key: username - name: LITESTREAM_PASSWORD valueFrom: secretKeyRef: name: litestream key: password ports: - name: metrics containerPort: 9090 resources: limits: memory: "128Mi" cpu: "500m" requests: memory: "64Mi" cpu: "100m" volumeClaimTemplates: - metadata: name: data spec: accessModes: [ "ReadWriteOnce" ] resources: requests: storage: 2Gi --- apiVersion: apps/v1 kind: Deployment metadata: name: mc-invites-frontend spec: selector: matchLabels: app: mc-invites-frontend replicas: 1 template: metadata: labels: app: mc-invites-frontend spec: containers: - name: frontend image: icr.gmem.ca/wlm-svelte:latest imagePullPolicy: Always resources: limits: memory: "128Mi" cpu: "500m" requests: memory: "64Mi" cpu: "100m" ports: - containerPort: 3000 --- apiVersion: v1 kind: Service metadata: name: mc-invites-frontend spec: selector: app: mc-invites-frontend ports: - port: 3000 targetPort: 3000