المساهمة في التعليمات البرمجية غير الأساسية

لتمكين الفرق التي تساهم بـ src غير أساسي في مشاريع الاتحاد التجاري بالملكية الكاملة لعملية المراجعة، تم إنشاء المشاريع التالية بحقوق +2 مفتوحة لجميع الفرق. وهذا يخفف فريق الاتحاد التجاري الأساسي من عبء جميع مراجعات التعليمات البرمجية غير المرتبطة بالإطار الأساسي بينما يسمح أيضًا للفرق الأخرى بالتكرار بشكل أسرع في دورة المراجعة الخاصة بهم.

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

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

مثال على فئة التجارة الأساسية هو أي فئة في حزمة com.google.android.tradefed.build مثل: com.google.android.tradefed.build.LaunchControlProvider

مرة أخرى، يرجى التواصل معنا إذا لم تكن متأكدًا مما يمكن اعتباره فئة أساسية لـ android-tradefed@.

[جدول المحتويات]

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

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

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

مراجعات الكود في مشاريع المساهمة

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

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

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

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

  • رئيسي
  • com.tradefed
  • oc-dev
  • oc-dev-plus-aosp
  • nyc-mr2-dev-plus-aosp
  • main-daydream-dev
  • رئيسي بدون بائع
  • ارتداء الرئيسي

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

من المتوقع أن يتمتع التطوير في contrib بنفس شريط الجودة الموجود في أي مكان آخر في مستودعات Android:

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

كيف يمكنني الاختبار محليًا في المساهمة؟

AOSP

في AOSP، توجد اختبارات الوحدة للمساهمة في النظام الأساسي/الأدوات/التجارة/المساهمة/الاختبارات/src/ ويجب إضافة اختبارات الوحدة إلى com.android.tradefed.prodtests.UnitTests ليتم التقاطها في نصوص الاختبار المسبق والمحلية.

البرامج النصية المحلية Aosp بعد تشغيل الغداء:

tools/tradefederation/core/tests/run_tradefed_aosp_presubmit.sh

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

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

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