Contribuer au code non essentiel

Pour permettre aux équipes qui contribuent au SRC non essentiel aux projets de la Tradefederation de s'approprier pleinement le processus d'examen, les projets suivants ont été créés avec des droits +2 ouverts pour toutes les équipes. Cela soulage l'équipe principale de Tradefederation du fardeau de toutes les révisions de code sans rapport avec le framework principal tout en permettant également aux autres équipes d'itérer plus rapidement dans leur cycle de révision.

Le src non principal est défini comme du code qui n'est pas requis par le cadre de la fédération du commerce pour être fonctionnel (par exemple, tests personnalisés, configurations, utilitaires de test spécifiques).

IMPORTANT Les src non essentiels ne doivent pas étendre les classes principales de la fédération commerciale. Cela a un impact sur la refactorisation/le nettoyage futur. Si vous ne savez pas si votre code appartient à core ou contrib, contactez android-tradefed@ pour obtenir des éclaircissements. L'équipe principale de la Tradefederation se fera un plaisir de vous conseiller et de recevoir des demandes de fonctionnalités.

Un exemple de classe principale de Tradefederation serait n'importe quelle classe du package com.google.android.tradefed.build comme : com.google.android.tradefed.build.LaunchControlProvider .

Encore une fois, veuillez nous contacter si vous ne savez pas ce qui serait considéré comme une classe principale pour Android-tradefed@.

[TOC]

Parcours des projets de contribution

À qui s'adressent ces projets de contribution ?

Si vous travaillez actuellement dans des projets de la Tradefederation en écrivant des tests/utilitaires de test/configurations, ces projets ont été créés pour vous.

Révisions de code dans les projets de contribution

Le but des projets contrib est de vous permettre de faire du développement dans Tradefed sans avoir besoin de la révision de l'équipe principale (android-tradefed@). Nous attendons donc de votre équipe ou de toute personne familière avec votre contexte qu'elle effectue les révisions de code sur vos CL.

N'hésitez pas à contacter android-tradefed@ si vous êtes bloqué ou si vous avez besoin de conseils sur un cas particulier, mais ne comptez pas sur lui par défaut pour effectuer votre révision de code dans contrib. L'équipe Tradefed n'a pas de SLO en ce qui concerne les révisions de code dans contrib.

Où puis-je commencer à travailler sur ces projets ?

Ils ont été ajoutés aux manifestes de branche suivants et font déjà partie de l'extraction de la plate-forme principale, donc si vous ne voyez pas les projets dans votre environnement, vous êtes à une synchronisation du dépôt de contribution.

  • principal
  • commerce
  • oc-dev
  • oc-dev-plus-aosp
  • nyc-mr2-dev-plus-aosp
  • main-daydream-dev
  • principal-sans-fournisseur
  • usure principale

Développement et tests

Le développement dans contrib devrait avoir la même barre de qualité que partout ailleurs dans les référentiels Android :

  • Respectez les directives de formatage Android
  • Le code est testé et soumis avec des tests
  • Le design est réfléchi et a du sens

Comment tester localement dans contrib ?

AOSP

Dans aosp, les tests unitaires de contrib se trouvent dans platform/tools/tradefederation/contrib/tests/src/ et les tests unitaires doivent être ajoutés à com.android.tradefed.prodtests.UnitTests pour être récupérés dans les scripts de pré-soumission et de tests locaux.

Scripts locaux Aosp après le déjeuner :

tools/tradefederation/core/tests/run_tradefed_aosp_presubmit.sh

Mise à jour des règles de construction pour les projets de contribution

Les règles de construction (makefiles) sont dans leur propre dossier build/ et verrouillées par un fichier OWNERS qui vous empêchera de les modifier sans un examen supplémentaire de la part de l'équipe principale. C'est la seule limitation du projet contrib.

Nous avons besoin de cet examen pour garantir qu'aucune dépendance inattendue n'est ajoutée aux projets globaux de Tradefed sans la connaissance ou l'accord de l'équipe principale. Si vous avez vraiment besoin d'ajouter de nouvelles dépendances, veuillez contacter android-tradefed@ pour examiner vos cas d'utilisation et vous conseiller.