لتمكين الفِرق التي تساهم في مشاريع Tradefederation غير الأساسية من امتلاك الحق الكامل في عملية المراجعة، تم إنشاء المشاريع التالية مع منح جميع الفِرق حقوق +2 مفتوحة. يخفّف ذلك عن فريق Tradefederation الأساسي عبء مراجعات الرموز البرمجية غير المرتبطة بالإطار الأساسي، كما يتيح للفرق الأخرى تكرار عملية المراجعة بشكل أسرع.
يتم تعريف المصدر غير الأساسي على أنّه الرمز الذي لا يتطلّبه إطار عمل Tradefederation ليكون فعّالاً (على سبيل المثال، الاختبارات المخصّصة، والإعدادات، وأدوات الاختبار المحدّدة).
ملاحظة مهمة يجب ألا يوسّع src غير الأساسي فئات tradefederation الأساسية. ويؤثر ذلك في إعادة البناء/التنظيف المستقبلي. إذا لم تكن متأكدًا مما إذا كان الرمز ينتمي إلى core أو contrib، يمكنك التواصل مع android-tradefed@ للحصول على توضيح. يسرّ فريق Tradefed الأساسي تقديم المشورة وتلقّي طلبات الميزات.
مثال على فئة أساسية في Tradefederation: أي فئة في حزمة
com.google.android.tradefed.buildمثل:com.google.android.tradefed.build.LaunchControlProviderيُرجى التواصل معنا مجددًا على android-tradefed@ إذا لم يكن واضحًا لك ما هي الفئة الأساسية.
[جدول المحتويات]
مسارات مشاريع المساهمين
مَن هم المستخدِمون المعنيّون بمشاريع المساهمة هذه؟
إذا كنت تعمل حاليًا في مشاريع Tradefederation لكتابة الاختبارات أو أدوات الاختبار أو الإعدادات، تكون هذه المشاريع قد تم إنشاؤها لك.
مراجعات الرموز البرمجية في المشاريع المساهمة
تهدف مشاريع المساهمة إلى السماح لك بتطوير Tradefed بدون الحاجة إلى مراجعة الفريق الأساسي (android-tradefed@). لذلك، نتوقّع أن يجري فريقك أو أي شخص على دراية بسياقك مراجعات الرمز البرمجي لطلبات الدمج.
يمكنك دائمًا التواصل مع android-tradefed@ إذا واجهتك مشكلة أو كنت بحاجة إلى إرشادات بشأن حالة معيّنة، ولكن لا تعتمد عليها تلقائيًا لإجراء مراجعة الرمز البرمجي في contrib. لا يلتزم فريق Tradefed باتفاقية مستوى الخدمة عندما يتعلّق الأمر بمراجعات الرموز البرمجية في المساهمات.
أين يمكنني البدء في العمل على هذه المشاريع؟
تمت إضافة هذه المشاريع إلى بيانات الفروع التالية، وهي مضمّنة حاليًا في عملية الدفع على المنصة الرئيسية، لذا إذا لم تظهر المشاريع في بيئتك، يمكنك إجراء عملية مزامنة للمستودع لتتمكّن من المساهمة.
- المحتوى الرئيسي
- tradefed
- oc-dev
- oc-dev-plus-aosp
- nyc-mr2-dev-plus-aosp
- main-daydream-dev
- main-without-vendor
- wear-main
التطوير والاختبار
من المتوقّع أن يكون مستوى جودة التطوير في contrib مماثلاً لأي مكان آخر في مستودعات Android:
- الالتزام بإرشادات التنسيق في Android
- يتم اختبار الرمز وإرساله مع الاختبارات
- التصميم مدروس ومنطقي
كيف يمكنني إجراء اختبار محلي في "مساهمات"؟
مشروع مفتوح المصدر لنظام Android (AOSP)
في AOSP، تقع اختبارات الوحدات الخاصة بـ contrib في platform/tools/tradefederation/contrib/tests/src/ ويجب إضافة اختبارات الوحدات إلى com.android.tradefed.prodtests.UnitTests ليتم تضمينها في نصوص البرامج الخاصة بالاختبارات المحلية واختبارات ما قبل الإرسال.
Aosp local scripts after running lunch:
tools/tradefederation/core/tests/run_tradefed_aosp_presubmit.sh
تعديل قواعد إنشاء المشاريع المساهمة
تندرج قواعد الإنشاء (ملفات makefile) ضمن مجلد build/ الخاص بها، ويتم قفلها بواسطة ملف OWNERS يمنعك من تعديلها بدون مراجعة إضافية من الفريق الأساسي. هذا هو القيد الوحيد على مشروع المساهمة.
نحتاج إلى هذه المراجعة للتأكّد من عدم إضافة أي تبعيات غير متوقّعة إلى مشاريع Tradefed الإجمالية بدون علم الفريق الأساسي أو موافقته.
إذا كنت بحاجة إلى إضافة بعض التبعيات الجديدة، يُرجى التواصل مع android-tradefed@ للنظر في حالات الاستخدام وتقديم المشورة لك.