tradefederation प्रोजेक्ट में नॉन-कोर सोर्स का योगदान देने वाली टीमों को समीक्षा की प्रोसेस का पूरा मालिकाना हक देने के लिए, यहां दिए गए प्रोजेक्ट बनाए गए हैं. इनमें सभी टीमों के लिए ओपन +2 लेवल के अधिकार हैं. इससे, मुख्य फ़्रेमवर्क से जुड़ी सभी कोड समीक्षाओं के बोझ से, ट्रेडफ़ेडर की मुख्य टीम को राहत मिलती है. साथ ही, अन्य टीमों को अपनी समीक्षा के चक्र को तेज़ी से पूरा करने में मदद मिलती है.
नॉन-कोर सोर्स को ऐसे कोड के तौर पर परिभाषित किया जाता है जिसे काम करने के लिए, ट्रेड फ़ेडरेशन फ़्रेमवर्क की ज़रूरत नहीं होती. जैसे, कस्टम टेस्ट, कॉन्फ़िगरेशन, और खास टेस्ट की सुविधाएं.
अहम जानकारी नॉन-कोर src को, कोर tradefederation क्लास एक्सटेंड नहीं करनी चाहिए. ऐसा करने से, आने वाले समय में रीफ़ैक्टरिंग/क्लीन अप पर असर पड़ता है. अगर आपको नहीं पता कि आपका कोड कोर में है या योगदान वाले हिस्से में, तो इस बारे में जानकारी पाने के लिए android-tradefed@ से संपर्क करें. tradefederation की मुख्य टीम, सुविधाओं के बारे में सलाह देने और उनका अनुरोध पाने में खुशी महसूस करती है.
मुख्य tradefederation क्लास का उदाहरण,
com.google.android.tradefed.build
पैकेज में मौजूद कोई भी क्लास होगी, जैसे कि:com.google.android.tradefed.build.LaunchControlProvider
अगर आपको यह नहीं पता कि android-tradefed@ के लिए कोर क्लास क्या मानी जाएगी, तो कृपया हमसे संपर्क करें.
[TOC]
Contrib प्रोजेक्ट के पाथ
ये योगदान देने वाले प्रोजेक्ट किसके लिए हैं?
अगर फ़िलहाल, आपका काम टेस्ट/टेस्ट के लिए उपयोगी टूल/कॉन्फ़िगरेशन लिखना है, तो ये प्रोजेक्ट आपके लिए बनाए गए हैं.
योगदान वाले प्रोजेक्ट में कोड की समीक्षा करना
योगदान देने वाले प्रोजेक्ट का मकसद, आपको मुख्य टीम (android-tradefed@) की समीक्षा के बिना, Tradefed में डेवलपमेंट करने की अनुमति देना है. इसलिए, हम उम्मीद करते हैं कि आपकी टीम या आपके कॉन्टेक्स्ट के बारे में जानने वाला कोई व्यक्ति, आपके सीएल पर कोड की समीक्षा करेगा.
अगर आपको किसी मामले में कोई समस्या आ रही है या आपको उससे जुड़ी सलाह चाहिए, तो android-tradefed@ पर बेझिझक संपर्क करें. हालांकि, contrib में कोड की समीक्षा करने के लिए, डिफ़ॉल्ट रूप से इस पर भरोसा न करें. 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 के फ़ॉर्मैट करने के दिशा-निर्देशों का पालन करना
- कोड की जांच की जाती है और उसे टेस्ट के साथ सबमिट किया जाता है
- डिज़ाइन सोच-समझकर बनाया गया हो और काम का हो
मैं contrib में स्थानीय तौर पर कैसे टेस्ट करूं?
AOSP
aosp में, योगदान वाले कोड की यूनिट टेस्ट, platform/tools/tradefederation/contrib/tests/src/ में मौजूद होती हैं. साथ ही, यूनिट टेस्ट को com.android.tradefed.prodtests.UnitTests में जोड़ा जाना चाहिए, ताकि उन्हें सबमिट करने से पहले और लोकल टेस्टिंग स्क्रिप्ट में शामिल किया जा सके.
lunch चलाने के बाद, Aosp की स्थानीय स्क्रिप्ट:
tools/tradefederation/core/tests/run_tradefed_aosp_presubmit.sh
योगदान वाले प्रोजेक्ट के लिए, नियमों को अपडेट करना
बिल्ड रूल (मेकफ़ाइलें) अपने build/
फ़ोल्डर में होती हैं और OWNERS
फ़ाइल से लॉक होती हैं. इससे, कोर टीम की अतिरिक्त समीक्षा के बिना, उनमें बदलाव नहीं किया जा सकता. contrib प्रोजेक्ट में सिर्फ़ यही सीमा है.
हमें इस समीक्षा की ज़रूरत है, ताकि यह पक्का किया जा सके कि मुख्य टीम की जानकारी या सहमति के बिना, Tradefed के सभी प्रोजेक्ट में कोई अनचाही डिपेंडेंसी न जोड़ी जाए.
अगर आपको सच में कुछ नई डिपेंडेंसी जोड़नी हैं, तो कृपया android-tradefed@
से संपर्क करें. इससे आपको अपने इस्तेमाल के उदाहरणों के बारे में पता चलेगा और आपको सलाह भी मिलेगी.