عن المشروع
GitHub Actions Gateway (GAG) هو مشغّل Kubernetes مصمم للعناقيد التي تتشارك فيها فرق متعددة خوادم GitHub Actions ذاتية الاستضافة. يقدم نفسه كبديل لوضع scale-set في Actions Runner Controller (ARC)، ويعالج الفجوات التي تظهر على نطاق تعدد المستأجرين.
تشمل القدرات الرئيسية إعادة التشغيل التلقائي للمهام التي تعطلت بسبب إخلاء الـ pod أو الاستباق أو التجفيف، مع ميزانية إعادة محاولة قابلة للتهيئة لكل تشغيل. يتقلص العمال إلى الصفر بين المهام، وتعمل جميع مستمعي الـ runner كـ goroutines داخل pod واحد مشترك لـ AGC بدلاً من pod دائم التشغيل لكل scale set. يحصل كل مستأجر على هوية خروج معزولة عبر مجموعة proxy خاصة به، مما يتيح إدراج IP لكل فريق على قوائم السماح وإسناد التدقيق.
يفرض المشروع ResourceQuota مشتركاً بأمان عبر تقييد قبول المهام قبل إنشاء المطالبات، ويدعم جدولة أولوية GPU عبر طبقات Kubernetes PriorityClass حتى لا تُستنزف الأجهزة المكلفة بسبب أحمال CPU. يقوم Gateway Manager Controller بتجهيز البنية التحتية للمستأجر من مورد مخصص واحد ActionsGateway، مما يتيح للفرق الخدمة الذاتية ضمن حصص مملوكة للمنصة.
تشمل الميزات الإضافية ضبط حجم العمال بناءً على قياسات موارد كل مهمة، واستمرارية كتابة مسبقة لنتائج المهام، ومكتبة قوالب runner منسقة، ومشاركة proxy عبر النطاقات بموافقة مسبقة، ووضعية خروج محكمة لطلبات السحب غير الموثوقة باستخدام مرآة سجل داخل العنقود. يُشحن المشروع كـ Helm chart موقّع من GHCR، مع v2beta1 كإصدار API الموصى به ومسارات ترحيل من v1 وARC.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.