عن المشروع

Artifact Gateway هو نظام خفيف لتخزين الحزم البرمجية يُصدر في نسخة مبكرة (v0.1.0) ومكتوب بلغة Go. يوفر واجهة متوافقة مع البروتوكولات لاستضافة وتمرير الحزم عبر عدة أنظمة حزم برمجية. **التنسيقات المدعومة:** - OCI (تحميل Registry V2، العبارات، العلامات، المرجعيات) - Maven (متوافق مع Gradle، جذر Nexus اختياري) - npm (نشر أصلي، دمج packuments) - PyPI (تحميل twine بجذر Nexus، قراءة PEP 503/691) - Go modules (قراءة GOPROXY، نشر ZIP متوافق مع Nexus) - Conan 2 (دورة حياة تعتمد على المراجع) - البيانات الخام (PUT/GET/HEAD، النطاقات، الرفع القابل للاستئناف) - APT (معاينة فقط) **البنية:** يعمل PostgreSQL كوحدة تنسيق وقاعدة بيانات واحدة، حيث يتعامل مع حالة المستودع، الترخيص، عمليات دورة الحياة، الإيجارات، القفل، التكرار، والتدقيق. ويحتفظ نظام التخزين الكائنات المتوافق مع S3 (RustFS مدمج محليًا) بالبيانات الثنائية للحزم خارج قاعدة البيانات. ولا يتطلب Redis أو Kafka أو Elasticsearch أو طرق تواصل خارجية. يمكن تشغيل الدور الافتراضي المستقل الذي ينفذ مهام API، الجدولة، والعمالة في عملية واحدة؛ أما التطبيقات الأكبر فيمكن تقسيمها حسب الدور. **تفاصيل التشغيل:** - حجم الملف الثنائي: حوالي 28.88 ميغابايت (Linux/arm64) - ذاكرة الاستخدام عند عدم النشاط: ~53.59 ميغابايت؛ الذروة ~104 ميغابايت تحت 128 عميل متوازي - واجهة ويب متوفرة على المنفذ 4173 لإدارة المستودعات - يدعم SSO OIDC، حسابات الخدمة، سياسة القراءة المجهولة، الحفظ، الترقية، التكرار، الويب هوك، دمج المسح، الحجز، القياسات، وعمليات النسخ الاحتياطي والاستعادة **النشر:** تُنشر صور الحاويات في GHCR. يتوفر بدء سريع باستخدام Docker Compose عبر الأمر `make dev-bootstrap` و `make dev`. توجد وثائق حول نشر Kubernetes والتطبيقات المتوزعة. تتضمن عمليات الترحيل لـ PostgreSQL. **الترخيص:** MIT حالة المشروع في مرحلة إصدار مبكر؛ قد تتغير العقود ما قبل الإصدار 1.0.