Skip to main content
La synchronisation GitHub s’exécute dans le service web (le module github-sync) de chaque pod Ayakaleaf Pro. Elle nécessite l’intégration Git. Créez l’application OAuth et découvrez le rôle de chaque paramètre dans Synchronisation GitHub ; cette page en décrit la mise en œuvre dans Kubernetes.

Configuration

1

ConfigMap

30-config.yaml (additions)
GIT_BRIDGE_ENABLED: "true" et le StatefulSet git-bridge décrits dans Intégration Git doivent être en place : sans eux, les paramètres du compte et l’éditeur masquent la synchronisation GitHub.
2

Secret

GITHUB_TOKEN_CIPHER_PASSWORD chiffre les jetons d’accès GitHub des utilisateurs dans MongoDB. Toutes les répliques doivent utiliser la même valeur, et la modifier ultérieurement oblige chaque utilisateur à lier à nouveau GitHub.
3

Autorité de certification privée (facultatif)

Si votre GitHub utilise un certificat émis par votre propre autorité de certification, ajoutez celle-ci 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 le ConfigMap.
4

Appliquer, redémarrer et vérifier

Tout code de statut HTTP signifie que GitHub est accessible depuis ce pod ; 000 signifie qu’il ne l’est pas.

Plusieurs répliques

Rien de plus que le GITHUB_TOKEN_CIPHER_PASSWORD partagé. Une synchronisation prend un verrou dans Redis, partagé avec les autres synchronisations Git, de sorte que deux répliques ne synchronisent jamais le même projet en même temps.

Testé sur Kubernetes

Face à une simulation de github.com et de ses API REST et GraphQL (approuvée via NODE_EXTRA_CA_CERTS depuis overleaf-certs), sur Kubernetes 1.37 avec une réplique et l’intégration Git activée, nos tests de bout en bout de la synchronisation GitHub réussissent (31 cas) : liaison et déliaison du compte, jetons révoqués, export d’un projet vers un nouveau dépôt privé ou d’organisation, import d’un dépôt (y compris au-delà de la limite de téléversement), récupération (pull) et envoi (push), fusions, conflits et fusions manuelles, branches supprimées et réécrites par push forcé, fichiers binaires, renommages et suppressions, perte de l’accès en push, et ce que les propriétaires, éditeurs et lecteurs peuvent faire.
Dernière modification le 2 novembre 2026