
renovate-operator v6.0.1
مشغل لتبسيط عمليات التجديد في Kubernetes
Renovate: الطريقة الأصلية لـ Kubernetes
شغّل Renovate على بنيتك التحتية الخاصة مع جدولة قائمة على CRD، وتنفيذ متوازٍ، واكتشاف تلقائي، وواجهة مستخدم مدمجة. إذا كنت تستضيف Renovate ذاتيًا وتشغّل Kubernetes بالفعل، فإن هذا الـ operator يمنحك التحكم والمراقبة التي تفتقر إليها إعدادات الاستضافة الذاتية العادية.
يدعم جميع منصات Renovate: GitHub وGitLab وBitbucket وAzure DevOps وGitea وغيرها. يعمل الـ operator مع أي منصة يدعمها Renovate - ما عليك سوى تهيئة بيانات الاعتماد وإعدادات المنصة عبر متغيرات البيئة أو الأسرار. لاحظ أن بعض المنصات لديها ميزات إضافية خاصة بالـ operator مثل تكاملات webhook الأصلية لـ GitHub وGitLab.
المقارنة مع Mend Renovate CE
| الميزة | Mend Renovate CLI | Mend Renovate Community Self-Hosted (المعروف بـ "CE") | Renovate Operator |
|---|---|---|---|
| مفتوح المصدر بالكامل، دون تسجيل أو مفتاح ترخيص | ✅ | ❌ | ✅ |
| تحديثات التبعيات الآلية | ✅ | ✅ | ✅ |
| يعمل على بنيتك التحتية الخاصة | ✅ | ✅ | ✅ |
| الاكتشاف التلقائي | ✅ | ✅ | ✅ |
| واجهة برمجة تطبيقات Webhook للتشغيل عند الطلب | ❌ | ✅ | ✅ |
| واجهة مستخدم ويب | ❌ | ❌ | ✅ |
| جدولة cron تعريفية عبر CRD | ❌ | ❌ | ✅ |
| الاكتشاف التلقائي مع تصفية المجموعات/المواضيع | ❌ | ❌ | ✅ |
| تتبع حالة كل مشروع داخل العنقود | ❌ | ❌ | ✅ |
| التنفيذ المتوازي مع التحكم في التزامن | ❌ | ❌ | ✅ |
| مقاييس Prometheus وفحوصات السلامة | ❌ | ✅ | ✅ |
| جدولة pods الأصلية لـ Kubernetes | ❌ | ❌ | ✅ |
| انتخاب القائد لضمان التوفر العالي | ❌ | ❌ | ✅ |
| إدارة دورة حياة المهام (TTL، المواعيد النهائية، إعادة المحاولات) | ❌ | ❌ | ✅ |
كيف يعمل
- في الوقت المحدد في جدولك، تبدأ مهمة اكتشاف renovate
- بعد انتهاء الاكتشاف، ستتمكن من رؤية جميع مشاريعك المكتشفة في واجهة المستخدم
- يتم الآن تعيين جميع المشاريع ليتم جدولتها
- كل 10 ثوانٍ يتحقق الـ operator من المشاريع المجدولة ويبدأ مهمة renovate جديدة
- يتم تنفيذ عدد من المهام فقط بقدر ما هو محدد في
spec.parallelismفي نفس الوقت

التثبيت
Helm
الخيار 1: سجل OCI
helm -n renovate-operator upgrade --install renovate-operator \
oci://ghcr.io/mogenius/helm-charts/renovate-operator \
--create-namespace --wait
الخيار 2: مستودع Helm
helm repo add mogenius https://helm.mogenius.com/public --force-update
helm -n renovate-operator upgrade --install renovate-operator mogenius/renovate-operator --create-namespace --wait
التوثيق
- البدء — التثبيت، أول RenovateJob، إعداد المنصة
- فهرس التوثيق الكامل
المجتمع
انضم إلى مجتمعنا على Slack لطرح الأسئلة ومشاركة الملاحظات والتواصل مع المستخدمين الآخرين والمشرفين.
المساهمة
صُنع باستخدام contrib.rocks.
التطوير
تشغيل المشغّل محليًا
المتطلبات المسبقة: يجب تثبيت just.
- صدّر
KUBECONFIGمع المسار المطلق إلى kubeconfig الخاص بك — لا يتم توسيع~، لذا استخدم$HOMEأو المسار الكامل:export KUBECONFIG=/Users/yourname/.kube/config # or export KUBECONFIG=$HOME/.kube/config - ابدأ المشغّل مقابل السياق الحالي في ملف kubeconfig ذلك:
just run
قد يسمّي KUBECONFIG أيضًا عدة ملفات مفصولة بـ :؛ ويتم دمجها بالطريقة
التي يدمجها بها kubectl.
لا يحتوي التشغيل المحلي على pod، وبالتالي لا يوجد namespace خاص به. يرفض فحص
الأسرار في دليل الإعداد كل namespace في تلك الحالة — عن قصد، حتى لا تتمكن واجهة
مكشوفة على العنقود من فحص الأسرار في namespaces لا شأن لها بها — ويسجّل السبب.
صدّر POD_NAMESPACE مع الـ namespace الذي تُعِدّه لتجربة تلك الخطوة محليًا:
export POD_NAMESPACE=renovate-operator
يقوم just run بتحميل .env، لذا يمكن أن يوجد كلا المتغيرين هناك بدلاً من shell الخاص بك.
تشغيل الاختبارات
| الأمر | الوصف |
|---|---|
just test-unit | تشغيل مجموعة اختبارات الوحدة |
just golangci-lint | تشغيل أداة الفحص (linter) |
just check | تشغيل جميع الفحوصات (الاختبارات + أدوات الفحص) |
just generate | إعادة إنشاء CRDs |