المساهمة برمز غير أساسي

لتمكين الفِرق التي تساهم في مشاريع tradefederation باستخدام مصدر غير أساسي من التملّك التام لعملية المراجعة، تم إنشاء المشاريع التالية مع منح جميع الفِرق حقوق الوصول المفتوح وحقوق الوصول بمستوى أعلى. ويساعد ذلك فريق tradefederation الأساسي في التخلص من عبء جميع مراجعات الرموز البرمجية غير المرتبطة بالإطار الأساسي، كما يسمح للفِرق الأخرى بإجراء عمليات تكرار بشكل أسرع في دورة المراجعة.

يتم تعريف src غير الأساسية على أنّها الرمز البرمجي الذي لا يتطلّب إطار عمل tradefederation أن يكون وظيفيًا (مثل الاختبارات المخصّصة والإعدادات وأدوات اختبار معيّنة).

ملاحظة مهمة: يجب ألا تُوسّع فئات src غير الأساسية فئات tradefederation الأساسية. ويؤثّر ذلك في عمليات إعادة التنظيم أو التنظيف المستقبلية. إذا لم تكن متأكدًا مما إذا كان الرمز البرمجي ينتمي إلى الإصدار الأساسي أو الإصدار المساهم، يُرجى التواصل مع android-tradefed@ للحصول على توضيح. يسرّ فريق tradefederation الأساسي تقديم النصائح وتلقّي طلبات الميزات.

على سبيل المثال، يمكن أن تكون فئة tradefederation الأساسية أي فئة في حزمة com.google.android.tradefed.build مثل: com.google.android.tradefed.build.LaunchControlProvider

مرة أخرى، يُرجى التواصل معنا إذا لم تكن متأكدًا مما يمكن اعتباره ملفًا أساسيًا في ملف الالتفاف على التوقيع.

[TOC]

مسارات مشاريع المساهمة

لمن هي مشروعات المساهمة هذه؟

إذا كنت تعمل حاليًا في مشاريع tradefederation لكتابة الاختبارات/أدوات الاختبار/الإعدادات، تم إنشاء هذه المشاريع لك.

مراجعات الرموز البرمجية في مشاريع المساهمة

يهدف مشروع المساهمين إلى السماح لك بتطوير Tradefed بدون الحاجة إلى مراجعة الفريق الأساسي (android-tradefed@). لذلك، نتوقع من فريقك أو أي شخص على دراية بسياقك إجراء مراجعات للرموز البرمجية على متغيّرات التصميم التراكمية (CL).

يمكنك متى شئت التواصل مع فريق android-tradefed@ إذا واجهت مشكلة أو كنت بحاجة إلى إرشادات بشأن حالة معيّنة، ولكن لا تعتمد عليه تلقائيًا لإجراء مراجعة للرمز البرمجي في contrib. لا يتوفّر لفريق Tradefed حدّ زمني لإنجاز المهام في ما يتعلّق بمراجعات الرموز البرمجية في contrib.

أين يمكنني بدء العمل على هذه المشاريع؟

وقد تمت إضافتها إلى بيانات الفرع التالية وهي جزء من عملية الدفع على المنصة الرئيسية، لذلك إذا لم تظهر المشاريع في بيئتك، فأنت في حاجة إلى المزامنة على سبيل المثال بدلاً من المساهمة.

  • الرئيسي
  • tradefed
  • oc-dev
  • oc-dev-plus-aosp
  • nyc-mr2-dev-plus-aosp
  • main-daydream-dev
  • main-without-vendor
  • wear-main

التطوير والاختبار

من المتوقع أن يحصل التطوير في المساهمة على مستوى الجودة نفسه مثل أي مكان آخر في مستودعات Android:

  • الالتزام بإرشادات تنسيق Android
  • اختبار الرمز البرمجي وإرساله مع الاختبارات
  • التصميم مدروس ومنطقي

كيف يمكنني الاختبار محليًا في contrib؟

مشروع مفتوح المصدر لنظام Android‏ (AOSP)

في نظام التشغيل Android Open Source Project (AOSP)، يمكن العثور على اختبارات الوحدة في contrib في platform/tools/tradefederation/contrib/tests/src/ ويجب إضافة اختبارات الوحدة إلى com.android.tradefed.prodtests.UnitTests لكي يتم اختيارها في النصوص البرمجية للاختبار المحلي والاختبار قبل الإرسال.

النصوص البرمجية المحلية في نظام التشغيل Aosp بعد تشغيل lunch:

tools/tradefederation/core/tests/run_tradefed_aosp_presubmit.sh

تحديث القواعد للمساهمة في المشاريع

تقع قواعد التصميم (ملفات makefiles) ضمن مجلد build/ الخاص بها ويتم قفلها باستخدام ملف OWNERS سيمنعك من تعديلها بدون إجراء مراجعة إضافية من الفريق الأساسي. هذا هو الحدّ الوحيد المفروض على مشروع المساهمين.

نحتاج إلى هذه المراجعة لضمان عدم إضافة أي تبعيات غير متوقّعة إلى مشاريع Tradefed بشكل عام بدون علم الفريق الأساسي أو موافقته. إذا كنت بحاجة فعلاً إلى إضافة بعض الموارد التابعة الجديدة، يُرجى التواصل مع "android-tradefed@" للنظر في حالات الاستخدام وتقديم المشورة لك.