Acerca de la configuración predeterminada
La configuración predeterminada para el code scanning es la manera más rápida, sencilla y con menos mantenimiento para habilitar el code scanning para un repositorio. En función del código del repositorio, la configuración predeterminada creará automáticamente una configuración personalizada del code scanning. Después de habilitar la configuración predeterminada, se analizará el código escrito en lenguajes compatibles con CodeQL en el repositorio:
- En cada envío de cambios a la rama predeterminada del repositorio o cualquier rama protegida. Para más información sobre las ramas protegidas, consulta Acerca de las ramas protegidas.
- Al crear o confirmar una solicitud de incorporación de cambios basada en la rama por defecto del repositorio, o cualquier rama protegida, excluidas las solicitudes de incorporación de cambios desde bifurcaciones.
- Según una programación semanal.
Nota:
Si no se han enviado cambios ni se han producido solicitudes de cambios en un repositorio con la configuración predeterminada habilitada durante 6 meses, la programación semanal se deshabilitará para ahorrar minutos de GitHub Actions.
También puedes habilitar la configuración predeterminada para varios o para todos los repositorios de una organización al mismo tiempo. Para obtener información sobre la habilitación masiva, vea Establecimiento de la configuración predeterminada para el examen de código a gran escala.
Si necesitas un control más pormenorizado de la configuración del code scanning, debes establecer una configuración avanzada. Para más información, consulta Establecimiento de la configuración avanzada para el examen del código.
Requisitos para usar la configuración predeterminada
El repositorio es apto para la configuración predeterminada de code scanning si:
Se recomienda habilitar la configuración predeterminada para repositorios aptos si hay alguna posibilidad de que los repositorios incluyan al menos un lenguaje compatible con CodeQL en el futuro. Si habilitas la configuración predeterminada en un repositorio que no incluya ningún lenguaje compatible con CodeQL, la configuración predeterminada no ejecutará ningún análisis ni usará ningún minuto de GitHub Actions. Si los idiomas compatibles con CodeQL se agregan a la reama predeterminada del repositorio, la configuración predeterminada comenzará automáticamente a analizar los idiomas compatibles con CodeQL y a usar minutos de GitHub Actions. Para más Información sobre los lenguajes compatibles con CodeQL, consulta Acerca del examen de código con CodeQL.
Puedes usar la configuración predeterminada con todos los lenguajes compatibles con CodeQL para ejecutores autohospedados o ejecutores hospedados en GitHub. Consulta Asignación de etiquetas a ejecutores, más adelante en este artículo.
La configuración predeterminada usa el modo de compilación none para C/C++, C#, Java y Rust y el modo de compilación autobuild para otros lenguajes compilados. Debe configurar los ejecutores autohospedados para asegurarte de que pueden ejecutar todos los comandos necesarios para el análisis de C/C++, C# y Swift. Actualmente, el análisis de código JavaScript/TypeScript, Go, Ruby, Python y Kotlin no requiere una configuración especial.
Personalización de la configuración predeterminada
Se recomienda empezar a usar code scanning con la configuración predeterminada. Después de establecer inicialmente la configuración predeterminada, se puede evaluar code scanning para ver cómo funciona. Si se detecta que algo no funciona según lo previsto, se puede personalizar la configuración predeterminada para satisfacer mejor las necesidades. Para más información, consulta Evaluación de la configuración predeterminada para el examen de código.
Acerca de cómo agregar nuevos idiomas a la configuración predeterminada
Si el código de un repositorio cambia para incluir cualquier idioma admitido por CodeQL, GitHub actualizará automáticamente la configuración de code scanning para incluir los nuevos idiomas. Si el code scanning da error con la nueva configuración, GitHub reanuda automáticamente la configuración anterior para que el repositorio no pierda la cobertura de code scanning.
Establecimiento de la configuración predeterminada para un repositorio
Nota:
Si se produce un erro en los análisis para todos los lenguajes compatibles con CodeQL de un repositorio, la configuración predeterminada seguirá habilitada, pero no se ejecutará ningún examen ni se usarán minutos de GitHub Actions hasta que otro lenguaje compatible con CodeQL se agregue al repositorio o se vuelva a configurar manualmente la configuración predeterminada y el análisis de un lenguaje compatible con CodeQL se ejecute correctamente.
-
En GitHub, navegue hasta la página principal del repositorio.
Nota:
Si realizas la configuración predeterminada en una bifurcación, primero debes habilitar GitHub Actions. Para habilitar GitHub Actions, bajo el nombre de tu repositorio, haz clic en Actions, después haz clic en I understand my workflows, go ahead and enable them. Tenga en cuenta que esto habilitará todos los flujos de trabajo existentes en la bifurcación.
-
Debajo del nombre del repositorio, haz clic en Settings. Si no puedes ver la pestaña "Configuración", selecciona el menú desplegable y, a continuación, haz clic en Configuración.

-
En la sección "Security" de la barra lateral, haz clic en Advanced Security.
-
En "Code Security", a la derecha de "CodeQL analysis", selecciona Set up y luego haz clic en Default.

Verás el cuadro de diálogo "Configuración predeterminada de CodeQL", que resume la configuración de code scanning creada automáticamente por la configuración predeterminada.
-
Opcionalmente, para personalizar la configuración de code scanning, haz clic en Editar.
- Para agregar o quitar un lenguaje del análisis realizado por la configuración predeterminada, selecciona o anula la selección de ese lenguaje en la sección "Lenguajes".
- Para especificar el conjunto de consultas CodeQL que desea usar, seleccione el conjunto de consultas preferido en la sección "Conjuntos de consultas".
-
Revisa los valores de la configuración predeterminada en el repositorio y haz clic en Habilitar CodeQL . Esto desencadenará un flujo de trabajo que pruebe la nueva configuración generada automáticamente.
Nota:
Si cambia a la configuración predeterminada desde la configuración avanzada, verá una advertencia que le informará de que la configuración predeterminada invalidará las configuraciones existentes de code scanning. Esta advertencia indica que la configuración predeterminada deshabilitará el archivo de flujo de trabajo actual y bloqueará las cargas de la API de análisis de CodeQL.
-
Opcionalmente, para ver la configuración predeterminada después de habilitarla, selecciona y haz clic en Ver configuración de CodeQL.
Asignación de etiquetas a ejecutores
Nota:
Code scanning ve los ejecutores asignados cuando la configuración predeterminada está habilitada. Si se asigna un ejecutor a un repositorio que ya está ejecutando la configuración predeterminada, debe deshabilitar y volver a habilitar la configuración predeterminada para empezar a usar el ejecutor. Si agrega un ejecutor y quiere empezar a usarlo, puede cambiar la configuración manualmente sin necesidad de deshabilitar y volver a habilitar la configuración predeterminada.
También puede asignar ejecutores autohospedados con la etiqueta predeterminada code-scanning o asignarles etiquetas personalizadas para que cada repositorio pueda usar un ejecutor diferente. Para obtener información sobre cómo asignar etiquetas a ejecutores autohospedados, consulte Uso de etiquetas con ejecutores autohospedados.
La especificación de etiquetas personalizadas para ejecutores autohospedados es opcional. Salvo que se trate de un caso de uso específico, se recomienda asignar a los ejecutores solo la etiqueta predeterminada code-scanning. Por ejemplo, puede que desee:
- Asigne los ejecutores autohospedados más eficaces a los repositorios críticos para un análisis de code scanning más rápido.
- Ejecute los análisis de code scanning en una plataforma determinada (por ejemplo, macOS).
- Tenga un control detallado de la carga de trabajo de los ejecutores autohospedados y los ejecutores hospedados por GitHub.
Una vez que haya asignado etiquetas personalizadas a los ejecutores autohospedados, los repositorios pueden usar esos ejecutores para la configuración predeterminada de code scanning. Para obtener más información, consulte Configuración de los valores predeterminados de un repositorio, más arriba en este artículo.
También puede usar security configurations para asignar etiquetas a ejecutores autohospedados para code scanning. Consulta Creación de una configuración de seguridad personalizada.
Asignación de ejecutores más grandes
Para asignar un ejecutor más grande, asigne al ejecutor el nombre code-scanning. Esta acción agregará automáticamente la etiqueta code-scanning al ejecutor más grande. Una organización solo puede tener un ejecutor más grande con la etiqueta code-scanning y ese ejecutor controlará todos los trabajos de code scanning de los repositorios de tu organización con acceso al grupo del ejecutor. Consulta Configuración de ejecutores más grandes para la configuración predeterminada.
Pasos siguientes
Después de que la configuración se haya ejecutado correctamente al menos una vez, puedes empezar a examinar y resolver alertas del code scanning. Para obtener más información sobre las alertas del code scanning, consulte Acerca de las alertas de análisis de código y Evaluación de alertas de análisis de código para el repositorio.
Después de establecer la configuración predeterminada para code scanning, se puede obtener información sobre cómo funciona y los pasos siguientes que se pueden seguir para personalizarlo. Para más información, consulta Evaluación de la configuración predeterminada para el examen de código.
Puedes encontrar información detallada sobre la configuración del code scanning, incluidas las marcas de tiempo de cada examen y el porcentaje de archivos escaneados, en la página de estado de la herramienta. Para más información, consulta Usar la página de estado de la herramienta para el examen de código.
Al establecer la configuración predeterminada, es posible que encuentres un error. Para obtener información sobre la solución de problemas específicos, consulte Solución de problemas de análisis de código.