כדי לאפשר לצוותים שמוסיפים קוד שלא שייך לליבת ה-src לתרום לפרויקטים של tradefederation ולקבל בעלות מלאה על תהליך הבדיקה, יצרנו את הפרויקטים הבאים עם הרשאות פתוחות של +2 לכל הצוותים. כך צוות הליבה של Tradefederation לא צריך לבצע את כל בדיקות הקוד שלא קשורות למסגרת הליבה, וגם הצוותים האחרים יכולים לבצע איטרציות מהר יותר במהלך מחזור הבדיקה שלהם.
Non-core src מוגדר כקוד שלא נדרש על ידי המסגרת tradefederation כדי לפעול (למשל, בדיקות מותאמות אישית, הגדרות, כלי בדיקה ספציפיים).
חשוב מקורות שאינם ליבה לא צריכים להרחיב את מחלקות הליבה של Tradefed. הפעולה הזו משפיעה על שינוי מבנה הקוד או על ניקוי שלו בעתיד. אם אתם לא בטוחים אם הקוד שלכם שייך לליבה או ל-contrib, אתם יכולים לפנות אל android-tradefed@ כדי לקבל הבהרה. הצוות המרכזי של Tradefederation ישמח לייעץ ולקבל בקשות לתכונות.
דוגמה למחלקה מרכזית של Tradefed היא כל מחלקה בחבילה
com.google.android.tradefed.buildכמו:com.google.android.tradefed.build.LaunchControlProviderאם לא ברור לך מה נחשב כ-core class ב-android-tradefed@, אפשר לפנות אלינו.
[TOC]
נתיבים של פרויקטים של תרומות
למי מיועדים פרויקטים של תרומות?
אם אתם עובדים כרגע בפרויקטים של Tradefederation בכתיבת בדיקות/כלי בדיקה/הגדרות, הפרויקטים האלה נוצרו בשבילכם.
בקרות קוד בפרויקטים של תורמים
המטרה של פרויקטים של תוספים היא לאפשר לכם לפתח ב-Tradefed בלי שתצטרכו לקבל אישור מצוות הליבה (android-tradefed@). לכן אנחנו מצפים שהצוות שלך או כל מי שמכיר את ההקשר שלך יבצעו את בדיקות הקוד ב-CL שלך.
אם נתקעתם או שאתם צריכים הדרכה לגבי מקרה ספציפי, אתם תמיד יכולים לפנות לכתובת android-tradefed@, אבל אל תסתמכו על כך כברירת מחדל כדי לבצע סקר קוד ב-contrib. לצוות Tradefed אין SLO בכל הנוגע לבדיקות קוד ב-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?
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@ כדי לבדוק את תרחישי השימוש שלכם ולתת לכם ייעוץ.