Damit Teams, die nicht zum Kern des Tradefederation-Projekts beitragen, die volle Kontrolle über den Überprüfungsprozess haben, wurden die folgenden Projekte mit offenen +2-Berechtigungen für alle Teams erstellt. Das entlastet das wichtigste Trade Federation-Team. Codeüberprüfungen, die nicht mit dem Kern-Framework zusammenhängen, damit die anderen Teams im Überprüfungszyklus schneller iterieren können.
Nicht zum Kern gehörender Code ist Code, der für die Funktion des Tradefederation-Frameworks nicht erforderlich ist (z. B. benutzerdefinierte Tests, Konfigurationen, spezielle Test-Dienstprogramme).
WICHTIG: Nicht-Core-src-Werte sollten keine Kernhandelsföderationsklassen erweitern. Dies wirkt sich auf zukünftiges Refactoring/Bereinigen aus. Wenn Sie sich nicht sicher sind, ob Ihr Code zu Haupt- oder Beitragsinhalte gehört, wende dich an android-tradefed@, um weitere Informationen zu erhalten. Das Trade Federation-Team berät Sie gern und erhält Funktionsanfragen.
Ein Beispiel für die Core Trade Federation-Klasse wäre eine beliebige Klasse im
com.google.android.tradefed.build
-Paket wie:com.google.android.tradefed.build.LaunchControlProvider
Auch hier können Sie sich an uns wenden, wenn Sie nicht genau wissen, was als Hauptbestandteil -Klasse an android-tradefed@.
[TOC]
Pfade zu Contrib-Projekten
Für wen sind diese Contrib-Projekte gedacht?
Wenn Sie derzeit in den Tradefederation-Projekten an Tests/Test-Dienstprogrammen/Konfigurationen arbeiten, wurden diese Projekte für Sie erstellt.
Codeüberprüfungen in Contrib-Projekten
Mit den Contrib-Projekten können Sie in Tradefed entwickeln, ohne dass die Änderungen vom Kernteam (android-tradefed@) genehmigt werden müssen. Wir erwarten also, Ihr Team oder eine andere Person, die sich mit Ihrem Kontext auskennt, die Codeüberprüfungen Ihre Änderungslisten.
Wenn Sie nicht weiterkommen oder Hilfe bei einem bestimmten Fall benötigen, können Sie sich jederzeit an android-tradefed@ wenden. Sie sollten jedoch nicht standardmäßig darauf zurückgreifen, um Ihre Codeüberprüfung in contrib durchzuführen. Tradefed Team hat kein SLO für Codeüberprüfungen in Contrib.
Wo kann ich mit der Arbeit an diesen Projekten beginnen?
Sie wurden den folgenden Zweigmanifesten hinzugefügt und sind bereits Teil von der Hauptplattform. Wenn Sie die Projekte in Ihrer Umgebung nicht sehen, und Sie können keine Repository-Synchronisierung vornehmen.
- Hauptnummer
- eingetauscht
- Ok-Dev
- oc-dev-plus-aosp
- nyc-mr2-dev-plus-aosp
- Main-Daydream-Entwicklung
- main-without-vendor
- Wear-Main
Entwicklung und Tests
Die Entwicklung in contrib muss denselben Qualitätsstandard erfüllen wie in allen anderen Android-Repositories:
- Die Android-Formatierungsrichtlinien einhalten
- Code wird getestet und zusammen mit Tests eingereicht
- Das Design ist durchdacht und sinnvoll
Wie teste ich lokal in Contrib?
AOSP
In aosp befinden sich die Komponententests von contrib unter platform/tools/tradefederation/contrib/tests/src/. Komponententests sollten com.android.tradefed.prodtests.UnitTests hinzugefügt werden, damit sie in Presubmit- und lokalen Testscripts berücksichtigt werden.
Lokale Aosp-Scripts nach dem Ausführen von „lunch“:
tools/tradefederation/core/tests/run_tradefed_aosp_presubmit.sh
Aktualisierung der Build-Regeln für Contrib-Projekte
Die Build-Regeln (Makefiles) befinden sich in einem eigenen build/
-Ordner und sind durch eine OWNERS
-Datei gesperrt, die verhindert, dass Sie sie ohne zusätzliche Überprüfung durch das Kernteam ändern. Dies ist die einzige Einschränkung für das Contrib-Projekt.
So möchten wir sicherstellen, dass keine unerwarteten Abhängigkeiten zum
Tradefed-Projekte ohne Wissen oder Zustimmung des Kernteams durchführen.
Wenn Sie wirklich neue Abhängigkeiten hinzufügen müssen, wenden Sie sich an
android-tradefed@
, um sich Ihre Anwendungsfälle anzusehen und Sie zu beraten.