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

لتمكين الفِرق التي تساهم في مشاريع 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@). لذلك، نتوقع أن يُجري فريقك أو أي شخص على دراية بالسياق مراجعات الرموز البرمجية على طلبات الدمج.

يمكنك متى شئت التواصل مع فريق 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

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

من المتوقّع أن يتوافق مستوى التطوير في contrib مع مستوى الجودة نفسه في أي مكان آخر في مستودعات 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@ للاطّلاع على حالات الاستخدام وتقديم النصائح لك.