--- - name: Add Gitea Helm Repo kubernetes.core.helm_repository: name: gitea repo_url: https://dl.gitea.com/charts/ - name: Create Gitea Data Directories file: path: "{{ item }}" state: directory mode: '0777' owner: root group: root loop: - /data/gitea/data - /data/gitea/postgres - name: Create Gitea Persistent Volume kubernetes.core.k8s: definition: apiVersion: v1 kind: PersistentVolume metadata: name: gitea-pv spec: capacity: storage: 150Gi accessModes: - ReadWriteOnce hostPath: path: /data/gitea/data storageClassName: manual - name: Create Postgres Persistent Volume kubernetes.core.k8s: definition: apiVersion: v1 kind: PersistentVolume metadata: name: gitea-postgres-pv spec: capacity: storage: 50Gi accessModes: - ReadWriteOnce hostPath: path: /data/gitea/postgres storageClassName: manual # - name: Clean up Released PVs and Incorrect PVCs # shell: | # microk8s kubectl patch pv gitea-pv -p '{"spec":{"claimRef": null}}' # microk8s kubectl patch pv gitea-postgres-pv -p '{"spec":{"claimRef": null}}' # microk8s kubectl delete pvc data-gitea-postgresql-0 -n gitea --wait=false # ignore_errors: true - name: Install Gitea kubernetes.core.helm: name: gitea chart_ref: gitea/gitea release_namespace: gitea create_namespace: true values: gitea: config: server: ROOT_URL: "https://git.svc.pguia.com/" DOMAIN: "git.svc.pguia.com" SSH_DOMAIN: "git.svc.pguia.com" SSH_PORT: "2222" SSH_LISTEN_PORT: "22" ingress: enabled: false postgresql: enabled: true primary: persistence: enabled: true storageClass: manual size: 50Gi postgresql-ha: enabled: false persistence: enabled: true storageClass: manual size: 150Gi wait: true - name: Create HTTPRoute for Gitea kubernetes.core.k8s: definition: apiVersion: gateway.networking.k8s.io/v1 kind: HTTPRoute metadata: name: gitea-route namespace: gitea spec: parentRefs: - name: main-gateway namespace: traefik hostnames: - "git.svc.pguia.com" rules: - matches: - path: type: PathPrefix value: / backendRefs: - name: gitea-http port: 3000 - name: Create TCPRoute for Gitea SSH kubernetes.core.k8s: definition: apiVersion: gateway.networking.k8s.io/v1alpha2 kind: TCPRoute metadata: name: gitea-ssh-route namespace: gitea spec: parentRefs: - name: main-gateway namespace: traefik sectionName: ssh rules: - backendRefs: - name: gitea-ssh port: 22