Pour permettre aux équipes qui contribuent à des sources non principales aux projets tradefederation de contrôler entièrement le processus d'examen, les projets suivants ont été créés avec des droits ouverts de niveau 2 pour toutes les équipes. Cela décharge l'équipe de base de Trade Federation de la charge de toutes les révisions de code sans rapport avec le framework de base, tout en permettant aux autres équipes d'itérer plus rapidement dans leur cycle d'examen.
Le code source non principal est défini comme un code qui n'est pas requis par le framework Trade Federation pour être fonctionnel (tests personnalisés, configurations, utilitaires de test spécifiques, par exemple).
IMPORTANT Les sources non principales ne doivent pas étendre les classes principales de tradefederation. Cela aura un impact sur les opérations de refactorisation/nettoyage futures. Si vous ne savez pas si votre code appartient à la suite principale ou à une contribution, contactez android-tradefed@ pour obtenir des précisions. L'équipe principale de Trade Federation se fera un plaisir de vous conseiller et de recevoir vos demandes de fonctionnalités.
Un exemple de classe de base tradefederation peut être n'importe quelle classe du package
com.google.android.tradefed.build
, comme :com.google.android.tradefed.build.LaunchControlProvider
Encore une fois, n'hésitez pas à nous contacter si vous ne savez pas ce qui est considéré comme une classe de base pour android-tradefed@.
[TOC]
Chemins d'accès des projets de contribution
À qui s'adressent ces projets de contribution ?
Si vous travaillez actuellement sur les projets de tradefederation en écrivant des tests/des utilitaires de test/des configurations, ces projets ont été créés pour vous.
Examens du code dans les projets de contribution
L'objectif des projets de contribution est de vous permettre de développer dans Tradefed sans avoir besoin de l'examen de l'équipe de base (android-tradefed@). Nous attendons donc de votre équipe ou de toute personne familière avec votre contexte qu'elle effectue les examens du code sur vos CL.
N'hésitez pas à contacter android-tradefed@ si vous rencontrez un problème ou si vous avez besoin d'aide pour un cas particulier, mais ne vous appuyez pas dessus par défaut pour effectuer votre analyse du code dans contrib. L'équipe Tradefed n'a pas de SLO concernant les examens du code dans les contributions.
Par où puis-je commencer à travailler sur ces projets ?
Ils ont été ajoutés aux fichiers manifestes de branche suivants et font déjà partie de la vérification de la plate-forme principale. Par conséquent, si vous ne voyez pas les projets dans votre environnement, vous n'êtes qu'à une synchronisation de dépôt de l'ajout de votre contribution.
- principal
- tradefed
- oc-dev
- oc-dev-plus-aosp
- nyc-mr2-dev-plus-aosp
- main-daydream-dev
- principal-sans-fournisseur
- wear-main
Développement et tests
Le développement dans contrib doit avoir la même barre de qualité que partout ailleurs dans les dépôts Android:
- Respecter les consignes de mise en forme Android
- Le code est testé et envoyé avec des tests
- Le design est réfléchi et logique
Comment effectuer des tests en local dans contrib ?
AOSP
Dans aosp, les tests unitaires de la contribution se trouvent dans platform/tools/tradefederation/contrib/tests/src/. Les tests unitaires doivent être ajoutés à com.android.tradefed.prodtests.UnitTests pour être détectés dans les scripts de présoumission et de test local.
Scénarios locaux Aosp après l'exécution de lunch:
tools/tradefederation/core/tests/run_tradefed_aosp_presubmit.sh
Mise à jour des règles de compilation pour les projets de contribution
Les règles de compilation (fichiers de compilation) se trouvent dans leur propre dossier build/
et sont verrouillées par un fichier OWNERS
qui vous empêche de les modifier sans un examen supplémentaire de l'équipe de base. Il s'agit de la seule limitation du projet contrib.
Nous avons besoin de cet examen pour nous assurer qu'aucune dépendance inattendue n'est ajoutée aux projets Tradefed globaux sans l'accord ou la connaissance de l'équipe de base.
Si vous avez vraiment besoin d'ajouter de nouvelles dépendances, veuillez contacter android-tradefed@
pour qu'il examine vos cas d'utilisation et vous conseille.