Examen de código y CodeQL
En función de la herramienta que quiera usar para el análisis y cómo quiera generar la alertas, hay opciones diferentes para configurar un examen de código en el repositorio. Las tres formas principales son:
- Usar la configuración predeterminada para configurar rápidamente el análisis de CodeQL para el análisis de código en el repositorio. La configuración predeterminada elige automáticamente los lenguajes que se van a analizar, los conjuntos de consultas que se van a ejecutar y los eventos que desencadenan exámenes. Si lo prefiere, puede seleccionar manualmente el conjunto de consultas que se va a ejecutar y los lenguajes que se van a analizar. Después de habilitar CodeQL, Acciones de GitHub llevará a cabo las ejecuciones de flujo de trabajo para examinar el código. Para obtener más información, consulte "Establecimiento de la configuración predeterminada para el examen del código".
- Usar la configuración avanzada para agregar el flujo de trabajo de CodeQL al repositorio. Esto genera un archivo de flujo de trabajo personalizable que usa github/codeql-action para ejecutar la CLI de CodeQL. Para obtener más información, consulte "Configuración avanzada para el examen de código".
- Ejecute la CLI de CodeQL directamente en un sistema de CI externo y cargue los resultados en GitHub. Para obtener más información, consulte "Uso del examen de código con el sistema de CI existente".[2]
Anteriormente, hemos aprendido a empezar a trabajar con las configuraciones y la configuración predeterminada. Ahora aprenderá a configurar el análisis de código con la configuración avanzada, así como a realizar una configuración masiva de un flujo de trabajo de análisis de código para varios repositorios.
Examen de código con Acciones de GitHub y CodeQL
Para configurar el examen de código con la configuración avanzada, haga lo siguiente:
- Vaya a la pestaña Configuración del repositorio.
- En el panel izquierdo, vaya a Seguridad y análisis de código, haga clic en la lista desplegable configuración y seleccione Avanzada. Es posible que tenga que habilitar GitHub Advanced Security antes de habilitar el examen de código.
- Se le llevará a una nueva página con un archivo de flujo de trabajo generado. Este archivo se denomina
codeql.yml
de forma predeterminada y es un archivo de flujo de trabajo configurable que debe confirmarse en el repositorio para comenzar a ejecutar el examen de código. - Para personalizar cómo se examina el código, edite el flujo de trabajo. Por lo general, puede confirmar el flujo de trabajo de análisis de CodeQL sin realizar ningún cambio.
- Use el botón Confirmar cambios... en la esquina superior derecha y escriba un mensaje de confirmación en el cuadro emergente.
- Elija si quiere confirmar directamente en la rama predeterminada o crear una rama e iniciar una solicitud de incorporación de cambios.
- Haga clic en Commit changes (Confirmar cambios).
En el flujo de trabajo de análisis de CodeQL predeterminado, el examen de código se configura para analizar el código cada vez que se envía un cambio en la rama predeterminada o en cualquier rama protegida, o bien se genera una solicitud de incorporación de cambios en la rama predeterminada. Como resultado, el examen de código comenzará ahora.
Los valores on:pull_request
y on:push
que se desencadenan para el examen de código son útiles para distintos propósitos.
Configuración masiva del examen de código
Puede configurar el examen de código en muchos repositorios a la vez mediante un script. Si quiere usar un script para generar solicitudes de incorporación de cambios que agreguen un flujo de trabajo de Acciones de GitHub a varios repositorios, consulte el repositorio jhutchings1/Create-ActionsPRs[3] para obtener un ejemplo con PowerShell, o bien djliffen/scripts-enablement[4] para obtener un ejemplo con NodeJS.