যেসব টিম tradefederation প্রোজেক্টে নন-কোর src কন্ট্রিবিউট করে তাদের পর্যালোচনা প্রসেসের সম্পূর্ণ মালিকানা দিতে, নিম্নলিখিত প্রোজেক্ট তৈরি করা হয়েছে যেখানে সব টিমের জন্য +২ অধিকার খোলা আছে। এর ফলে, মূল ফ্রেমওয়ার্কের সাথে সম্পর্কিত নয় এমন কোড রিভিউয়ের বোঝা থেকে মূল ট্রেডফেডারেশন টিম মুক্তি পায় এবং অন্যান্য টিমও তাদের রিভিউ সাইকেলে আরও দ্রুত কাজ করতে পারে।
নন-কোর src বলতে এমন কোডকে বোঝায় যা tradefederation ফ্রেমওয়ার্কের কার্যকারিতার জন্য প্রয়োজন নেই (যেমন, কাস্টম টেস্ট, কনফিগারেশন, নির্দিষ্ট টেস্ট ইউটিলিটি)।
গুরুত্বপূর্ণ নন-কোর src, কোর tradefederation ক্লাস এক্সটেন্ড করা উচিত নয়। এটি করলে ভবিষ্যতে রিফ্যাক্টর/ক্লিন-আপের উপর প্রভাব পড়ে। আপনার কোড কোর বা কন্ট্রিবিউশনে আছে কিনা তা নিশ্চিত না হলে, android-tradefed@-এ যোগাযোগ করুন। মূল Tradefederation টিম পরামর্শ দিতে এবং ফিচার সংক্রান্ত অনুরোধ গ্রহণ করতে পেরে খুশি।
কোর ট্রেডফেডারেশন ক্লাসের একটি উদাহরণ হল
com.google.android.tradefed.buildপ্যাকেজের মধ্যে থাকা যেকোনও ক্লাস, যেমন:com.google.android.tradefed.build.LaunchControlProviderandroid-tradefed@-এর জন্য কোন ক্লাসকে কোর ক্লাস হিসেবে বিবেচনা করা হবে সেই বিষয়ে আপনার কোনও সন্দেহ থাকলে, আমাদের সাথে যোগাযোগ করুন।
[TOC]
Contrib প্রোজেক্টের পাথ
এইসব কন্ট্রিবিউট প্রজেক্ট কাদের জন্য?
আপনি বর্তমানে tradefederation প্রজেক্টে টেস্ট/টেস্ট ইউটিলিটি/কনফিগারেশন লেখার কাজ করলে, এই প্রজেক্টগুলি আপনার জন্যই তৈরি করা হয়েছে।
contrib প্রোজেক্টে কোড রিভিউ
কন্ট্রিবিউট প্রোজেক্টের লক্ষ্য হল, আপনাকে মূল টিমের (android-tradefed@) পর্যালোচনার প্রয়োজন ছাড়াই Tradefed-এ ডেভেলপমেন্ট করতে দেওয়া। তাই আমরা আশা করি যে আপনার টিম বা আপনার কনটেক্সট সম্পর্কে পরিচিত কেউ আপনার CL-এর কোড পর্যালোচনা করবেন।
কোনও নির্দিষ্ট ক্ষেত্রে আটকে গেলে বা নির্দেশিকার প্রয়োজন হলে, সবসময় android-tradefed@-এ যোগাযোগ করতে দ্বিধা করবেন না, তবে contrib-এ আপনার কোড রিভিউ করার জন্য ডিফল্ট হিসেবে এর উপর নির্ভর করবেন না। কন্ট্রিবিউশনে কোড রিভিউয়ের ক্ষেত্রে Tradefed টিমের কোনও SLO নেই।
আমি কোথায় এইসব প্রোজেক্টে কাজ করা শুরু করতে পারি?
এগুলি নিম্নলিখিত ব্রাঞ্চ ম্যানিফেস্টে যোগ করা হয়েছে এবং আগেই মূল প্ল্যাটফর্ম চেক-আউটের অংশ হয়ে গেছে, তাই আপনার এনভায়রনমেন্টে প্রোজেক্ট দেখতে না পেলে, রিপো সিঙ্ক করলেই আপনি কন্ট্রিবিউট করতে পারবেন।
- প্রধান
- 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 যাতে সেগুলি প্রিসাবমিট ও লোকাল টেস্টিং স্ক্রিপ্টে ব্যবহার করা যায়।
রান লাঞ্চের পরে Aosp লোকাল স্ক্রিপ্ট:
tools/tradefederation/core/tests/run_tradefed_aosp_presubmit.sh
কন্ট্রিবিউট প্রোজেক্টে বিল্ড রুল আপডেট করা
বিল্ড রুল (makefile) নিজস্ব build/ ফোল্ডারের মধ্যে থাকে এবং একটি
OWNERS ফাইল দিয়ে লক করা থাকে যা কোর টিমের অতিরিক্ত রিভিউ
ছাড়া আপনি পরিবর্তন করতে পারবেন না। কন্ট্রিবিউট প্রোজেক্টের ক্ষেত্রে এটিই একমাত্র সীমাবদ্ধতা।
মূল টিমের জ্ঞান বা সম্মতি ছাড়া সামগ্রিক Tradefed প্রোজেক্টে
কোনও অপ্রত্যাশিত নির্ভরতা যোগ করা হয়নি তা নিশ্চিত করতে আমাদের এই পর্যালোচনা প্রয়োজন।
সত্যিই যদি নতুন কিছু ডিপেন্ডেন্সি যোগ করার প্রয়োজন হয়, তাহলে আপনার ব্যবহারের কেস খতিয়ে দেখতে এবং পরামর্শ দিতে
android-tradefed@ যোগাযোগ করুন।