محتويات الدورة

CI/CD / أسس الدمج والمرشح / الدرس 3

أحداث المصدر والمراجعة المختبرة

اربط هوية الحدث وهوية النسخة المسحوبة وأهلية الإصدار.

وقت القراءة التقريبي: 4 دقيقةتاريخ مراجعة المحتوى
في هذه الصفحة

أهداف الدرس

  • تمييز فحوص الفروع والدمج والوسوم والجدولة.
  • بناء جدول قرار للمشغلات دون تفعيل سير عمل.

الحدث والمراجعة حقيقتان مختلفتان

يشرح حدث المصدر سبب وجود خط العمل، وتشرح المراجعة البايتات المفحوصة. قد ينشئ دفع فرع تشغيلاً، بينما يفحص خط طلب الدمج فرع المصدر أو نتيجة دمج مصطنعة بحسب إعداد المنصة. سجّل الاثنين. عبارة اختبرنا main غامضة إذا تقدم main بعد سحب المصدر. تتيح هوية مراجعة ثابتة وسياق الحدث تمييز التزام جديد وإعادة تشغيل التزام قديم وفحص دمج متوقع.

اكتب سلوك التشغيل كجدول

تأمل اقتراح تغيير غير موثوق ودفع دمج محمي ووسم إصدار وتشغيلاً مجدولاً. تحتاج الاقتراحات اختبارات سريعة دون صلاحية إصدار. تنتج دفعات الدمج مرشحين بعد الفحوص. يمكن للوسوم اختيار مرشح مبني سابقاً فقط عند التحقق من علاقة الوسم بالمراجعة. تكشف الجدولة انجراف الاعتمادات دون أن تمثل طلب إصدار جديداً. يمنع ذلك التكرار ورفع الصلاحيات العرضي. يستدعي جمع التشغيل الواسع بالصلاحيات المرتفعة مراجعة ثقة دقيقة.

text عقد مقترح للأحداث
proposal       -> test, no release authority
integration    -> test and candidate
release tag    -> verify candidate relationship
schedule       -> drift checks, no implicit release

هذا جدول تصميم لا إعداد CI تنفيذي. يجب مراجعة حماية الفروع وأذونات الوسوم ودلالات الحدث في المنصة قبل تحويله إلى قواعد.

اختبر التركيب الذي يهم

لا يثبت نجاح فرع المصدر توافقه مع هدف تغير أثناء الانتظار. يمكن لفحوص نتيجة الدمج أو طوابيره اختبار حالة مركبة وتقليل الفجوة، لكن دعمها وسلوكها يختلفان بالمنصة والاشتراك. تبقى إعدادات التشغيل والاعتمادات خارج دمج المصدر ما لم تُسجل منفصلة. قرر ما يجب إعادة التحقق منه عند تقدم الهدف. لا تلحق حالة نجاح قديمة بمراجعة أحدث لمجرد تقليل الانتظار.

افصل الأهلية عن التنفيذ

قد يؤهل الحدث للاختبار دون الإصدار. يشترط النموذج الكامل التالي حدث دمج محمياً وأدلة ناجحة. قيمة trusted الممثلة هنا بـ protected مدخل معلن، ولا ينبغي قبولها من ملف يتحكم فيه مساهم عشوائي. تستمد الأنظمة الفعلية الثقة من المنصة وسياسة المستودع. يصغّر الشرط مساحة المراجعة للحالات السلبية، مثل فرع باسم يوحي بالإصدار داخل نسخة متفرعة أو تشغيل مجدول لمراجعة قديمة.

python تقييم الأهلية محلياً
def eligible(event, protected, checks):
    return event == "integration" and protected and checks
for event, protected in [("proposal", False), ("integration", True), ("schedule", True)]:
    print(event, eligible(event, protected, True))
الناتج المتوقع
proposal False
integration True
schedule False

لا يسحب النموذج مصدراً ولا يمنح أذونات. يجب أن تزوده المنصة بمعلومات حدث وحماية متحقق منها بدلاً من ثقة في مدخل المستخدم.

امنع التكرار دون فقد الفحوص المطلوبة

قد يشغّل دفع فرع ذي طلب مفتوح خطي الدفع والاقتراح معاً. يستهلك الاثنان السعة وينشران حالات مكررة مربكة. حدّد الحدث المسؤول عن كل فحص وتأكد من ظهور الأسماء المطلوبة لكل مسار دمج. تحتاج مرشحات المسارات عناية أيضاً: يغيّر إعداد مترجم مشترك شيفرة خارج المجلد المعدل. ينبغي ألا يترك التخطي فحصاً مطلوباً معلقاً إلى الأبد أو يسمح بتغيير إعداد مشترك بلا اختبار.

الأخطاء الشائعة وإصلاحها

يشير وسم الإصدار إلى مراجعة غير مختبرة.

لماذا يحدث؟
قُبل الاسم المقروء دون حل الهدف الفعلي.
كيف تصلحه؟
حل الوسم وطابقه مع دليل المرشح قبل الترقية.
كيف تتجنب تكراره؟
اشترط علاقات صريحة بين المراجعة والناتج.

ينشر خطان نتائج متعارضة للاقتراح نفسه.

لماذا يحدث؟
يمتلك حدثا الدفع والاقتراح الحالة ذاتها.
كيف تصلحه؟
حدد ملكية الحدث وأسماء الحالات المطلوبة الثابتة.
كيف تتجنب تكراره؟
راجع جدول الأحداث كاملاً بما فيه دفع طلب مفتوح.

يتخطى مرشح المسار الاختبارات بعد تعديل بناء مشترك.

لماذا يحدث؟
يمثل المرشح مكان الملف بدلاً من أثر الاعتماد.
كيف تصلحه؟
ضمّن المدخلات المشتركة أو شغّل الفحوص المتأثرة بتحفظ.
كيف تتجنب تكراره؟
راجع المرشحات وفق الاعتمادات مع أمثلة سلبية.

اختبر فهمك

1. كشف فحص مجدول انجراف الاعتماد دون تغير المصدر. هل يصدر آلياً؟

اعرض الحل المشروح

ليس وفق الجدول المعلن. تقدم الجدولة دليلاً جديداً عن مدخلات خارجية متغيرة. ينبغي لتغيير مراجع تحديث سجل الاعتماد وإنتاج مرشح واجتياز العقد المعتاد بدلاً من تمرير إصدار عبر حدث صيانة.

2. نجح اقتراح ثم تغير main قبل الدمج. ما الدليل الناقص؟

اعرض الحل المشروح

ينقص إثبات عمل التغيير مع حالة الهدف الجديدة. أعد فحص المراجعة المركبة بآلية نتيجة الدمج أو الطابور التي تدعمها المنصة، أو بفحص دمج موثق آخر. احتفظ بهوية المصدر وهوية التركيب المختبر.

أهم ما تعلمته

  • سجّل سبب التشغيل وما فحصه بدقة.
  • راجع قواعد الأحداث وصلاحيات الإصدار منفصلة.

المراجع الرسمية