Skip to main content

Despliegue de GitHub Code Quality a gran escala

Lleve Code Quality a todos los equipos con confianza realizando primero una prueba piloto con un grupo pequeño y amplíe su uso una vez ajustados los umbrales de calidad.

¿Quién puede utilizar esta característica?

Propietarios de repositorios, propietarios de la organización y usuarios con el rol de administrador

GitHub Team o GitHub Enterprise Cloud

Si se activa Code Quality en todas partes de golpe, todos los equipos empezarán a ver hallazgos de Code Quality en sus solicitudes de incorporación de cambios ese mismo día, lo que puede resultar desconcertante y perturbador. En este tutorial, aprenderá a implementarlo en fases: introduzca primero los resultados en un grupo pequeño, calibrar los umbrales y, a continuación, expandirlos. Demostrará el valor antes de que afecte a toda la organización.

Prerequisites

  • Un propietario de la empresa ha autorizado Code Quality en su empresa. Consulte Permitir el uso de GitHub Code Quality en su empresa.
  • Es propietario de la organización, por lo que puede habilitar Code Quality y configurar conjuntos de reglas en el nivel de organización.

Planifica tu prueba piloto

Comience con un grupo piloto pequeño en lugar de con toda la organización. Un buen grupo piloto es un único equipo de ingeniería, o un conjunto relacionado de aplicaciones, lo suficientemente activo como para generar resultados significativos y propiedad de personas que pueden proporcionarle comentarios sobre los resultados.

Para tener como destino ese grupo, use la configuración de acceso al repositorio de la organización para Code Quality. Tiene dos buenas opciones para un piloto:

  • Repositorios seleccionados: Elija una lista fija de repositorios piloto a mano. Mejor cuando el grupo piloto es pequeño y estable.
  • Coincidencia de un filtro: Habilite todos los repositorios que coincidan con los criterios que defina, como una propiedad personalizada como code-quality-enabled: true. Ideal si quiere que el piloto crezca automáticamente a medida que los equipos etiqueten más repositorios.

Si se selecciona destino mediante una propiedad personalizada, en lugar de asignar nombres a los repositorios uno por uno, puede ampliar el piloto más adelante estableciendo la propiedad en más repositorios. Si desea usar una propiedad personalizada:

  1. Cree la propiedad personalizada. Consulte Administración de propiedades personalizadas para repositorios de la organización.
  2. Habilite Code Quality en el nivel de organización para los repositorios que coincidan con un filtro. Consulte Habilitación de la calidad del código en organizaciones y empresas.

Activar conjuntos de reglas de calidad en modo de evaluación

Habilite primero los umbrales de calidad en el modo de evaluación. En este modo, Code Quality informa de qué solicitudes de incorporación de cambios se bloquearían, sin bloquearlas realmente, por lo que los equipos piloto pueden ver el impacto antes de que se aplique.

Configure los umbrales como un conjunto de reglas de organización aplicable a los repositorios piloto y déjelos en modo de evaluación hasta que haya recopilado suficiente actividad de solicitudes de extracción para evaluar el impacto, normalmente una o dos semanas. Consulte Establecimiento de umbrales de calidad de código para solicitudes de incorporación de cambios.

Ajuste de los umbrales

Use los resultados del modo de evaluación para calibrar los umbrales. Compruebe la información del conjunto de reglas (el historial del conjunto de reglas) para ver exactamente qué solicitudes de incorporación de cambios se habrían bloqueado y por qué. Si se bloquearan demasiadas pull requests, puede que sus umbrales sean más estrictos de lo que su base de código está preparada para asumir. Si no se bloquearía casi ninguna, quizá le convenga endurecer las medidas. Ajuste hasta que la puerta refleje el listón de calidad que realmente quiera aplicar.

Cambiar al modo de aplicación forzada

Cuando los resultados del modo de evaluación parezcan correctos, cambie el conjunto de reglas de Evaluar a Activo. Los umbrales comienzan ahora a bloquear las solicitudes de incorporación de cambios que no las cumplen. Sus equipos piloto pasan por la puerta aplicada, lo que permite realizar una comprobación final antes de ampliar la implementación.

Expansión en toda la organización

Amplíe la implementación basándose en lo aprendido del piloto. Puede ampliarlo de dos maneras:

  • Agregue repositorios a la lista Repositorios seleccionados o establezca la propiedad personalizada en más repositorios que coincidan con el filtro.
  • Una vez que esté seguro de los umbrales, cambie la configuración de acceso del repositorio a Todos los repositorios para que se apliquen Code Quality en toda la organización en un único cambio.

Algunas cosas que debe saber sobre cómo se comporta la habilitación de nivel de organización, por lo que puede elegir el enfoque adecuado:

  • La opción de acceso al repositorio se aplica a los repositorios existentes y futuros, por lo que los repositorios creados más adelante heredan automáticamente su elección. Esto es cierto para Todos los repositorios, Coincidencia de un filtro y Sin repositorios.
  • Activa Forzar acceso para garantizar una configuración de referencia que los administradores del repositorio no puedan anular. Déjelo desactivado o elija Que los repositorios decidan para que los equipos lo activen cuando mejor les convenga.

Para obtener la lista completa de las opciones de acceso y cómo funciona la aplicación, consulte Habilitación de la calidad del código en organizaciones y empresas.

Ampliar mediante programación

Para la mayoría de los lanzamientos, habilitar a través de la interfaz de usuario es el mejor punto de partida: permite filtrar y dirigir los repositorios directamente, lo que es más difícil de reproducir en un script.

Si necesita automatizar su despliegue, puede recuperar los hallazgos a través de la API REST Code Quality, lo que resulta útil para elaborar informes sobre el progreso a medida que amplía el despliegue. También puede habilitar Code Quality en los repositorios a través de la API de REST, por lo que puede automatizar la activación en toda su organización en lugar de habilitar cada repositorio desde la interfaz de usuario. Consulte Puntos de conexión de api REST para la calidad del código.

Configuración de la cobertura de código

Agregue cobertura de código una vez que se ajusten los umbrales. La cobertura de código es independiente de los umbrales de calidad que implementó en los pasos anteriores, por lo que puede activarlo siempre que se adapte a sus equipos o omitirlo por completo si no lo desea.

Habilitar Code Quality no activa automáticamente la cobertura de código. La cobertura es opcional por repositorio y comienza a notificarse solo después de que se agregue un flujo de trabajo que cargue los datos de cobertura al repositorio. Esto significa que los equipos pueden adoptar Code Quality primero y agregar cobertura más adelante.

Para configurar la cobertura de un repositorio, consulte Configurar la cobertura de código para tu repositorio.

Pasos siguientes

Ahora que ha implementado Code Quality en toda la organización, puede evaluar el estado de los repositorios de un vistazo y decidir dónde centrarse. Consulte Exploración de los resultados de calidad de código GitHub en su organización.