gitea-sync) i hver Ayakaleaf Pro-pod. Den kræver Git-integrationen. Opret OAuth-applikationen, og læs, hvad hver indstilling gør, i Gitea-synkronisering; denne side lægger det ind i Kubernetes.
Konfiguration
1
ConfigMap
30-config.yaml (additions)
GIT_BRIDGE_ENABLED: "true" og git-bridge-StatefulSet’et fra Git-integration skal være på plads: uden dem skjuler kontoindstillingerne og editoren Gitea-synkronisering.2
Secret
GITEA_TOKEN_CIPHER_PASSWORD krypterer brugernes Gitea-adgangs- og refresh-tokens i MongoDB. Hver replika skal bruge den samme værdi, og hvis den ændres senere, skal alle brugere tilknytte Gitea igen.3
Privat CA (valgfrit)
Hvis din Gitea har et certifikat fra din egen CA, skal du tilføje CA’en til Secret’en
overleaf-certs, der er monteret på /var/lib/overleaf/certs (se Certifikater og andre filer), og sætte NODE_EXTRA_CA_CERTS: /var/lib/overleaf/certs/ca.pem i ConfigMap’en.4
Anvend, genstart og tjek
000 betyder, at den ikke kan.Flere replikaer
Intet ekstra ud over den delteGITEA_TOKEN_CIPHER_PASSWORD. En synkronisering tager en lås i Redis, delt med de andre Git-synkroniseringer, så to replikaer aldrig synkroniserer det samme projekt samtidig.
Testet på Kubernetes
Mod en rigtig Gitea 1.23 påGITEA_SYNC_URL, på Kubernetes 1.37 med én replika og Git-integrationen slået til, består vores end-to-end-test for Gitea-synkronisering (39 tilfælde): tilknytning og fjernelse af tilknytning af kontoen via Giteas OAuth2, fornyelse af det udløbende adgangstoken og tilbagekaldte tilladelser, eksport til et nyt privat repository eller organisations-repository, import af et repository, pull og push, merges, konflikter, slettede og force-pushede branches, binære filer, omdøbninger og sletninger samt hvad ejere, redaktører og læsere må gøre.
