apiVersion: apps/v1 kind: Deployment metadata: name: gitea namespace: gitea spec: replicas: 1 strategy: type: RollingUpdate rollingUpdate: maxUnavailable: 0 maxSurge: 100% selector: matchLabels: component: web template: metadata: labels: app: gitea component: web managedBy: wild-cloud partOf: wild-cloud spec: securityContext: fsGroup: 1000 terminationGracePeriodSeconds: 60 containers: - name: gitea image: "{{ .apps.gitea.image }}" imagePullPolicy: IfNotPresent env: - name: SSH_LISTEN_PORT value: "2222" - name: SSH_PORT value: "{{ .apps.gitea.sshPort }}" - name: GITEA_APP_INI value: /data/gitea/conf/app.ini - name: GITEA_CUSTOM value: /data/gitea - name: GITEA_WORK_DIR value: /data - name: GITEA_TEMP value: /tmp/gitea - name: TMPDIR value: /tmp/gitea - name: HOME value: /data/gitea/git - name: GITEA_ADMIN_USERNAME value: "admin" - name: GITEA_ADMIN_PASSWORD valueFrom: secretKeyRef: name: gitea-secrets key: adminPassword - name: GITEA_ADMIN_PASSWORD_MODE value: keepUpdated - name: GITEA__security__SECRET_KEY valueFrom: secretKeyRef: name: gitea-secrets key: secretKey - name: GITEA__security__INTERNAL_TOKEN valueFrom: secretKeyRef: name: gitea-secrets key: jwtSecret - name: GITEA__database__PASSWD valueFrom: secretKeyRef: name: gitea-secrets key: dbPassword ports: - name: ssh containerPort: 2222 - name: http containerPort: {{ .apps.gitea.port }} livenessProbe: failureThreshold: 10 initialDelaySeconds: 200 periodSeconds: 10 successThreshold: 1 tcpSocket: port: http timeoutSeconds: 1 readinessProbe: failureThreshold: 3 initialDelaySeconds: 5 periodSeconds: 10 successThreshold: 1 tcpSocket: port: http timeoutSeconds: 1 resources: {} securityContext: {} volumeMounts: - name: temp mountPath: /tmp - name: data mountPath: /data volumes: - name: temp emptyDir: {} - name: data persistentVolumeClaim: claimName: gitea-data