gitea-sync) de chaque pod Ayakaleaf Pro. Elle nécessite l’intégration Git. Créez l’application OAuth et consultez le rôle de chaque paramètre dans Synchronisation Gitea ; cette page explique comment l’intégrer dans Kubernetes.
Configuration
1
ConfigMap
30-config.yaml (additions)
GIT_BRIDGE_ENABLED: "true" et le StatefulSet git-bridge de l’intégration Git doivent être en place : sans eux, les paramètres du compte et l’éditeur masquent la synchronisation Gitea.2
Secret
GITEA_TOKEN_CIPHER_PASSWORD chiffre les jetons d’accès et d’actualisation Gitea des utilisateurs dans MongoDB. Tous les réplicas doivent utiliser la même valeur, et la modifier ultérieurement oblige chaque utilisateur à lier à nouveau Gitea.3
CA privée (facultatif)
Si votre Gitea possède un certificat émis par votre propre CA, ajoutez la CA au Secret
overleaf-certs monté sur /var/lib/overleaf/certs (voir Certificats et autres fichiers) et définissez NODE_EXTRA_CA_CERTS: /var/lib/overleaf/certs/ca.pem dans la ConfigMap.4
Appliquer, redémarrer et vérifier
000 signifie qu’il ne l’est pas.Plusieurs réplicas
Rien de plus que leGITEA_TOKEN_CIPHER_PASSWORD partagé. Une synchronisation prend un verrou dans Redis, partagé avec les autres synchronisations Git, de sorte que deux réplicas ne synchronisent jamais le même projet en même temps.
Testé sur Kubernetes
Face à un véritable Gitea 1.23 à l’adresseGITEA_SYNC_URL, sur Kubernetes 1.37 avec un réplica et l’intégration Git activée, nos tests de bout en bout pour la synchronisation Gitea réussissent (39 cas) : la liaison et la dissociation du compte via l’OAuth2 de Gitea, l’actualisation du jeton d’accès arrivant à expiration et les autorisations révoquées, l’export vers un nouveau dépôt privé ou d’organisation, l’import d’un dépôt, le pull et le push, les fusions, les conflits, les branches supprimées et poussées de force, les fichiers binaires, les renommages et suppressions, et ce que les propriétaires, éditeurs et lecteurs peuvent faire.
