gitlab-sync modülü) çalışır. Git entegrasyonu gerektirir. OAuth uygulamasını oluşturmak ve her ayarın ne işe yaradığını öğrenmek için GitLab Senkronizasyonu sayfasına bakın; bu sayfa bunu Kubernetes’e uygular.
Yapılandırma
1
ConfigMap
30-config.yaml (additions)
GIT_BRIDGE_ENABLED: "true" ve Git entegrasyonu sayfasındaki git-bridge StatefulSet’i mevcut olmalıdır: bunlar olmadan hesap ayarları ve düzenleyici GitLab Senkronizasyonunu gizler.2
Secret
GITLAB_TOKEN_CIPHER_PASSWORD, kullanıcıların GitLab erişim ve yenileme token’larını MongoDB’de şifreler. Her replika aynı değeri kullanmalıdır; bu değeri daha sonra değiştirmek, her kullanıcının GitLab’ı yeniden bağlamasını gerektirir.3
Özel CA (isteğe bağlı)
GitLab’ınız kendi CA’nızdan alınmış bir sertifika kullanıyorsa, CA’yı
/var/lib/overleaf/certs konumuna bağlanan overleaf-certs Secret’ına ekleyin (bkz. Sertifikalar ve diğer dosyalar) ve ConfigMap’te NODE_EXTRA_CA_CERTS: /var/lib/overleaf/certs/ca.pem değerini ayarlayın.4
Uygulayın, yeniden başlatın ve kontrol edin
000 erişilemediği anlamına gelir.Birden fazla replika
PaylaşılanGITLAB_TOKEN_CIPHER_PASSWORD dışında ek bir şey gerekmez. Bir senkronizasyon, diğer Git senkronizasyonlarıyla paylaşılan bir Redis kilidi alır; böylece iki replika hiçbir zaman aynı projeyi aynı anda senkronize etmez. Bir kullanıcının GitLab token’ını yenilemek de bir Redis kilidi alır; böylece iki replika onu aynı anda yenilemez.
Kubernetes üzerinde test edildi
GITLAB_SYNC_URL adresindeki kendi yönetilen bir GitLab taklidine karşı (overleaf-certs içinden NODE_EXTRA_CA_CERTS aracılığıyla güvenilen), tek replikalı ve Git entegrasyonu açık Kubernetes 1.37 üzerinde, GitLab Senkronizasyonu için uçtan uca testlerimiz başarılı oldu (40 vaka): hesabı bağlama ve bağlantısını kaldırma, süresi dolmak üzere olan bir erişim token’ını yenileme ve iptal edilmiş token’lar, yeni bir özel veya grup projesine dışa aktarma, bir depoyu içe aktarma, çekme ve gönderme, birleştirmeler, çakışmalar, silinmiş ve zorla gönderilmiş dallar, ikili dosyalar, yeniden adlandırmalar ve silmeler ve sahiplerin, düzenleyicilerin ve görüntüleyicilerin neler yapabileceği.
