Ativar Code Quality em todos os lugares ao mesmo tempo significa que cada equipe começa a ver Code Quality descobertas em suas solicitações de pull no mesmo dia, o que pode ser surpreendente e perturbador. Neste tutorial, você aprenderá a implantá-lo em fases: introduzir descobertas em um pequeno grupo primeiro, calibrar seus limites e, em seguida, expandir. Você provará o valor antes que ele afete toda a sua organização.
Pré-requisitos
- Um proprietário da empresa permitiu Code Quality em sua empresa. Consulte Permitindo o uso de GitHub Code Quality na sua empresa.
- Você é um proprietário da organização, portanto, pode habilitar Code Quality e configurar conjuntos de regras no nível da organização.
Planeje seu piloto
Comece com um pequeno grupo piloto em vez de toda a sua organização. Um bom grupo piloto é uma única equipe de engenharia, ou um conjunto relacionado de aplicativos, que esteja ativo o suficiente para gerar resultados significativos e sob responsabilidade de pessoas que possam dar feedback sobre os resultados.
Para direcionar esse grupo, use a configuração de acesso do Repositório da sua organização para Code Quality. Você tem duas boas opções para um piloto:
- Repositórios selecionados: Escolha uma lista fixa de repositórios piloto manualmente. Melhor quando o grupo piloto é pequeno e estável.
- Correspondendo a um filtro: Habilite cada repositório que corresponda aos critérios definidos, como uma propriedade personalizada como
code-quality-enabled: true. Ideal quando você quer que o piloto cresça automaticamente à medida que as equipes etiquetam mais repositórios.
Usar uma propriedade personalizada para direcionamento, em vez de especificar os repositórios individualmente, significa que você poderá expandir o piloto mais tarde simplesmente definindo essa propriedade em mais repositórios. Se você quiser usar uma propriedade personalizada:
- Crie a propriedade personalizada. Consulte Como gerenciar propriedades personalizadas para repositórios na sua organização.
- Habilite Code Quality no nível da organização, para repositórios correspondentes a um filtro. Consulte Capacitação em qualidade de código em organizações e empresas.
Ativar conjuntos de regras de qualidade no modo de avaliação
Habilite os limites de qualidade no modo de avaliação primeiro. Nesse modo, Code Quality informa quais pull requests seriam bloqueadas, sem realmente bloqueá-las, para que as equipes piloto possam ver o impacto antes de isso passar a ser aplicado de forma obrigatória.
Configure seus limites como um conjunto de regras organizacional aplicado aos repositórios piloto e mantenha-o no modo de avaliação até reunir atividade suficiente de pull requests para avaliar o impacto, o que normalmente leva uma ou duas semanas. Consulte Definindo limites de qualidade de código para solicitações de pull.
Ajuste seus limiares
Use os resultados do modo de avaliação para calibrar seus limites. Verifique os insights do conjunto de regras (o histórico do conjunto de regras) para saber exatamente quais pull requests teriam sido bloqueados e por quê. Se muitos pull requests forem bloqueados, os limites configurados podem estar mais rigorosos do que sua base de código consegue atender no momento. Se quase nada seria bloqueado, talvez seja melhor torná-los mais rígidos. Ajuste até que a porta reflita a barra de qualidade que você realmente deseja impor.
Mudar para o modo de aplicação
Quando os resultados do modo de avaliação parecerem corretos, alterne o conjunto de regras de Avaliar para Ativo. Os limites agora começam a bloquear solicitações de pull que não as atendem. Suas equipes piloto passam pela etapa de aprovação obrigatória, dando a você uma checagem final antes de ampliar a implementação.
Expanda por toda a sua organização
Amplie a implementação usando o que você aprendeu no projeto piloto. Você pode ampliá-lo de duas maneiras:
- Adicione repositórios à sua lista de repositórios selecionados ou defina sua propriedade personalizada em mais repositórios que correspondam ao filtro.
- Quando estiver confiante em seus limites, alterne a configuração de acesso do Repositório para Todos os repositórios a serem aplicadosCode Quality em toda a sua organização em uma única alteração.
Algumas coisas para saber como a habilitação no nível da organização se comporta, para que você possa escolher a abordagem certa:
- Sua opção de acesso ao Repositório se aplica a repositórios existentes e futuros, portanto, os repositórios criados posteriormente herdam sua escolha automaticamente. Isso é verdadeiro para todos os repositórios, correspondendo a um filtro e sem repositórios.
- Ative Impor acesso a uma linha de base garantida que os administradores do repositório não podem substituir. Deixe-o desativado ou escolha Permitir que os repositórios decidam, para permitir que as equipes aceitem em sua própria linha do tempo.
- Ativar Code Qualitynão ativa automaticamente cobertura de código. A cobertura é habilitada por repositório. Ele só passa a exibir relatórios depois que alguém adiciona um fluxo de trabalho que envia dados de cobertura, para que as equipes possam adotar Code Quality primeiro e adicionar a cobertura depois. Consulte Configurando a cobertura de código para seu repositório.
Para obter a lista completa de opções de acesso e como a imposição funciona, consulte Capacitação em qualidade de código em organizações e empresas.
Escalar programaticamente
Para a maioria das distribuições, habilitar por meio da interface do usuário é o melhor ponto de partida: permite filtrar e direcionar repositórios diretamente, o que é mais difícil de reproduzir em um script.
Se você precisar de automação para sua implantação, poderá recuperar Code Quality resultados por meio da API REST, o que é útil para gerar relatórios sobre o progresso conforme amplia a implantação. Você também pode habilitar Code Quality em repositórios por meio da API REST, para que você possa habilitar o script em toda a sua organização em vez de habilitar cada repositório na interface do usuário. Consulte Endpoints da API REST para qualidade de código.
Próximas Etapas
- Avalie a saúde em toda a sua organização. Consulte Explorando os resultados de qualidade de código do GitHub em sua organização.