Acerca de la especificación de las opciones de comando en un archivo de configuración de CodeQL
Puedes guardar las opciones predeterminadas o usadas con frecuencia de los comandos en un archivo de configuración por usuario.
Puedes especificar las opciones de comando de CodeQL CLI de dos maneras:
- Directamente en la línea de comandos, con la marca adecuada.
- En un archivo de configuración (o
config
) que CodeQL examina en busca de las opciones pertinentes cada vez que se ejecuta un comando.
En el caso de las opciones que es probable que cambien cada vez que ejecute un comando, la manera más práctica de pasar la información a CodeQL consiste en especificar el valor en la línea de comandos. Una forma recomendable de especificar las opciones que se usan con frecuencia es guardar las opciones en un archivo config
. También es una buena manera de agregar paquetes personalizados de CodeQL que se usan con regularidad en la ruta de acceso de búsqueda.
Uso de un archivo de configuración de CodeQL
Debes guardar el archivo config
en el directorio principal (Linux y macOS) o del perfil de usuario (Windows) en el subdirectorio .config/codeql/
. Por ejemplo, $HOME/.config/codeql/config
.
La sintaxis para especificar opciones es la siguiente:
<command> <subcommand> <option> <value>
Para aplicar las mismas opciones a más de un comando, puedes hacer lo siguiente:
- Omitir el elemento
<subcommand>
, que especificará la opción para cada elemento<subcommand>
para el que sea pertinente. - Omitir tanto
<command>
como<subcommand>
, que especificarán globalmente la opción para cada elemento<command>
y<subcommand>
para el que sean pertinentes.
Note
- Los archivos
config
solo aceptan espacios entre marcas de opción y valores. CodeQL producirá un error si se usa=
para especificar un valor de opción. - Si especificas una opción en la línea de comandos, se invalida el valor
config
definido para esa opción. - Si quieres especificar más de una opción para un elemento
<command>
,<subcommand>
o globalmente, usa una línea por opción.
Ejemplos
-
Para generar todos los resultados de análisis que produce
codeql database analyze
como formato CSV, debes especificar lo siguiente:database analyze --format csv
Aquí debes especificar el comando y el subcomando para impedir que se pase la misma opción
--format
a los comandos de bajo nivel que se ejecutan durantedatabase analyze
. -
Para definir la RAM (4096 MB) y el número de subprocesos (4) que se usarán al ejecutar comandos de CodeQL, especifica lo siguiente en líneas independientes:
--ram 4096 --threads 4
-
Para especificar globalmente un directorio de modo que CodeQL lo examine en busca de paquetes de CodeQL (que no es un elemento del mismo nivel que el directorio de instalación), usa lo siguiente:
--search-path <path-to-directory>