- الرئيسية
- Docs Control
- تسجيل المستودعات الجديدة
تسجيل المستودعات الجديدة
تغطي هذه الصفحة إجراءات تسجيل مستودع جديد في نظام حوكمة docs-control وتكوين أنابيب التوثيق وأتمتة Antigravity الذكية.
المتطلبات الأساسية
Section titled “المتطلبات الأساسية”- العضوية في المؤسسة
f5-sales-demo - أسرار
REPO_SETTINGS_TOKENوREPO_SYNC_TOKENمكونة كأسرار على مستوى المؤسسة (أو مضافة إلى المستودع الجديد بشكل فردي) - أسرار
ANTIGRAVITY_TOKENوGCP_PROJECT_IDمكونة لمراجعة كود طلبات السحب الآلية وترجمة اللغات بواسطة Antigravity الذكية - الوصول إلى صورة الحاوية
ghcr.io/f5-sales-demo/docs-builder
خطوات التسجيل
Section titled “خطوات التسجيل”1. الإضافة إلى downstream-repos.json
Section titled “1. الإضافة إلى downstream-repos.json”أضف الاسم المباشر للمستودع — وليس owner/repo — في .github/config/downstream-repos.json في docs-control. يتم إضافة المالك عند وقت التوزيع من GITHUB_REPOSITORY_OWNER. يضمن ذلك تسجيله للتوزيع والإنفاذ.
ثم قم بتعيين فئة له في repo_classes.repos في .claude/governance.json. هذا إلزامي: تفشل اختبارات وحدة shell إذا تم تسجيل مستودع للتوزيع بدون تعيين فئة.
2. الإضافة الاختيارية إلى docs-sites.json
Section titled “2. الإضافة الاختيارية إلى docs-sites.json”إذا كان المستودع سينشر توثيقاً، أضف إدخالاً إلى .github/config/docs-sites.json مع:
label— اسم الموقع القابل للقراءةurl— الرابط لنقطة نهايةllms-full.txtالخاصة بالموقعdescription— وصف قصير مستخدم في ملف README المنشأ
إذا لم يتم إضافة أي إدخال، يعود منشئ README إلى اسم مستودع بحروف كبيرة ووصف GitHub API.
3. دمج .gitignore
Section titled “3. دمج .gitignore”يقوم سير عمل الإنفاذ بإعادة كتابة ملف .gitignore التابع بالكامل. قبل التسجيل، ادمج أي إدخالات خاصة بالمستودع في قالب .gitignore في docs-control حتى لا تفقد.
4. تثبيت مسارات العمل المستدعية
Section titled “4. تثبيت مسارات العمل المستدعية”انسخ قوالب سير العمل المستدعي من workflows/ في docs-control إلى دليل .github/workflows/ الخاص بالمستودع الجديد:
enforce-repo-settings.yml— يتسبب في إنفاذ الإعدادات ومزامنة الملفاتgithub-pages-deploy.yml— يتسبب في بناء التوثيق ونشرهrequire-linked-issue.yml— ينفذ ربط طلب السحب بالمشكلةantigravity-review.yml— يتسبب في مراجعة كود طلب السحب بواسطة Antigravity الذكيةantigravity-translate.yml— يتسبب في ترجمة اللغات بواسطة Antigravity الذكيةsuper-linter.yml— يشغل مجموعة super-linter على طلبات السحبdependabot-auto-merge.yml— يدمج تلقائياً طلبات سحب dependabot المعتمدة
يتم مزامنة هذه الملفات تلقائياً أيضاً بواسطة سير عمل مزامنة الملفات، ولكن تثبيتها يدوياً يبدأ العملية.
5. تشغيل الإنفاذ
Section titled “5. تشغيل الإنفاذ”شغل سير عمل الإنفاذ يدوياً في المستودع الجديد:
source_sha=$(gh api repos/f5-sales-demo/docs-control/commits/main --jq '.sha')gh workflow run enforce-repo-settings.yml --repo f5-sales-demo/<repo-name> -f source_sha="$source_sha"يطبق هذا جميع إعدادات المستودع، وينشئ أي ملفات حوكمة مفقودة، ويفتح طلب سحب للمزامنة إذا لزم الأمر.
6. التحقق من الإعدادات
Section titled “6. التحقق من الإعدادات”تأكد من نجاح الإنفاذ:
gh run list --repo f5-sales-demo/<repo-name> --workflow enforce-repo-settings.yml --limit 1تحقق من تكوين حماية الفروع، وصلاحيات Actions، و Pages بشكل صحيح:
gh api repos/f5-sales-demo/<repo-name>/branches/main/protection --jq '.required_status_checks.contexts'7. التحقق من موقع التوثيق
Section titled “7. التحقق من موقع التوثيق”إذا كان المستودع يحتوي على دليل docs/، تأكد من إمكانية الوصول إلى موقع التوثيق بعد أول نشر ناجح:
curl -sf "https://f5-sales-demo.github.io/<repo-name>/" && echo "OK" || echo "FAIL"دقة الفروع (Forks): إلغاء الاشتراك من الملفات المدارة
Section titled “دقة الفروع (Forks): إلغاء الاشتراك من الملفات المدارة”تقبل معظم المستودعات الخاضعة للحوكمة كل ملف مدار كما هو، ولكن يمكن للفروع النشطة إلغاء الاشتراك من المزامنة في مسارات معينة باستخدام skip_files في repo-settings.json تحت managed_files و .claude/governance.json.