Contribuir com código não principal

Para permitir que as equipes que contribuem com src não principal para os projetos de tradefederation tenham a propriedade total do processo de revisão, os seguintes projetos foram criados com direitos abertos +2 para todas as equipes. Isso alivia a equipe central da TradeFederation da carga de todas as revisões de código não relacionadas ao framework principal e, ao mesmo tempo, permitindo que as outras equipes iterem mais rapidamente em seu ciclo de revisão.

Non-core src é um código que não é exigido pela federação comercial. para funcionar (por exemplo, testes personalizados, configurações, testes específicos utilitários).

IMPORTANTE: os src não principais não podem estender as classes principais da federação. Isso afeta a refatoração/limpeza futura. Se você não tiver certeza se o código pertence a core ou contrib, entre em contato com android-tradefed@ para esclarecimentos. A equipe principal da Trade Federation vai adorar receber e aconselhar sobre solicitações de recursos.

Um exemplo de classe de federação principal seria qualquer classe na O pacote com.google.android.tradefed.build está como: com.google.android.tradefed.build.LaunchControlProvider

Entre em contato se não tiver certeza do que seria considerado uma classe principal para android-tradefed@.

[TOC]

Projetos contrib caminhos

Para quem são esses projetos de contribuição?

Se você trabalha em projetos de tradefederation escrevendo testes/utilitários/configurações de teste, esses projetos foram criados para você.

Análises de código em projetos contrib

O objetivo dos projetos de contribuição é permitir que você faça desenvolvimento no Tradefed. sem precisar da análise da equipe principal (android-tradefed@). Portanto, esperamos sua equipe ou qualquer pessoa familiarizada com o contexto para realizar as revisões de código seus CLs.

Sempre entre em contato com android-tradefed@ se tiver dificuldades ou precisar de orientação sobre um caso específico, mas não dependa dele por padrão para fazer a revisão de código em contribuições A equipe do Tradefed não tem SLO quando se trata de revisões de código em contribuição.

Por onde posso começar a trabalhar nesses projetos?

Eles foram adicionados aos seguintes manifestos de ramificação e já fazem parte do processo de verificação da plataforma principal. Se você não encontrar os projetos no seu ambiente, faça uma sincronização do repositório para contribuir.

  • principal
  • tradefed
  • oc-dev
  • "oc-dev-plus-".
  • nyc-mr2-dev-plus-aosp
  • main-daydream-dev
  • principal-sem-fornecedor
  • wear-main

Desenvolvimento e teste

Espera-se que o desenvolvimento em Contribu tenha a mesma barra de qualidade que em qualquer outro lugar nos repositórios do Android:

  • Respeite as diretrizes de formatação do Android
  • O código é testado e enviado com testes
  • O design é inteligente e faz sentido

Como faço para testar localmente na contribuição?

AOSP

No AOSP, os testes de unidade de contrib estão localizados em platform/tools/tradefederation/contrib/tests/src/ e os testes de unidade precisam ser adicionados a com.android.tradefed.prodtests.UnitTests para serem coletados nos scripts de pré-envio e de teste local.

Scripts locais do Aosp após a execução do almoço:

tools/tradefederation/core/tests/run_tradefed_aosp_presubmit.sh

Atualização das regras de build para contribuir com projetos

As regras de build (makefiles) ficam na própria pasta build/ e são bloqueadas por um OWNERS que impedirá que você as modifique sem uma revisão adicional da equipe principal. Essa é a única limitação ao projeto de contribuição.

Precisamos dessa revisão para garantir que nenhuma dependência inesperada seja adicionada à projetos gerais da Tradefed sem o conhecimento ou o acordo da equipe principal. Se você realmente precisar que algumas novas dependências sejam adicionadas, entre em contato com android-tradefed@ para analisar seus casos de uso e aconselhar você.