Skip to main content
تعمل المزامنة مع Gitea في خدمة web (وحدة gitea-sync) في كل Pod من Pods ‏Ayakaleaf Pro. وتحتاج إلى التكامل مع Git. أنشئ تطبيق OAuth واقرأ ما يفعله كل إعداد في المزامنة مع Gitea؛ أما هذه الصفحة فتشرح وضعها في Kubernetes.

الإعداد

1

ConfigMap

30-config.yaml (additions)
يجب أن يكون GIT_BRIDGE_ENABLED: "true" والـ StatefulSet الخاص بـ git-bridge من التكامل مع Git جاهزين: فبدونهما تُخفي إعدادات الحساب والمحرر خيار المزامنة مع Gitea.
2

Secret

يشفّر GITEA_TOKEN_CIPHER_PASSWORD رموز الوصول ورموز التحديث الخاصة بـ Gitea للمستخدمين في MongoDB. يجب أن تستخدم كل نسخة متماثلة القيمة نفسها، وتغييرها لاحقًا يجعل كل المستخدمين يعيدون ربط Gitea.
3

جهة شهادات خاصة (اختياري)

إذا كانت لدى Gitea الخاص بك شهادة صادرة عن جهة شهادات (CA) خاصة بك، فأضف جهة الشهادات إلى الـ Secret ‏overleaf-certs المركّب على /var/lib/overleaf/certs (راجع الشهادات والملفات الأخرى) واضبط NODE_EXTRA_CA_CERTS: /var/lib/overleaf/certs/ca.pem في الـ ConfigMap.
4

طبّق التغييرات وأعد التشغيل وتحقّق

أي رمز حالة HTTP يعني أنه يمكن الوصول إلى Gitea من ذلك الـ Pod؛ أما 000 فيعني أنه لا يمكن الوصول إليه.

عدة نسخ متماثلة

لا حاجة إلى شيء إضافي سوى GITEA_TOKEN_CIPHER_PASSWORD المشترك. تأخذ المزامنة قفلًا في Redis، مشتركًا مع عمليات مزامنة Git الأخرى، لذا لا تزامن نسختان متماثلتان المشروع نفسه في الوقت نفسه أبدًا.

الاختبار على Kubernetes

مقابل Gitea 1.23 حقيقي على GITEA_SYNC_URL، على Kubernetes 1.37 مع نسخة متماثلة واحدة وتفعيل التكامل مع Git، نجحت اختباراتنا الشاملة للمزامنة مع Gitea ‏(39 حالة): ربط الحساب وإلغاء ربطه عبر OAuth2 الخاص بـ Gitea، وتحديث رمز الوصول المنتهي الصلاحية والتفويضات الملغاة، والتصدير إلى مستودع خاص جديد أو مستودع مؤسسة، واستيراد مستودع، والسحب والدفع، وعمليات الدمج، والتعارضات، والفروع المحذوفة والمدفوعة قسرًا (force-pushed)، والملفات الثنائية، وإعادة التسمية والحذف، وما يمكن للمالكين والمحررين والمشاهدين فعله.
آخر تعديل في ٢ نوفمبر ٢٠٢٦