Sobre a especificação de opções de comando em um arquivo de configuração do CodeQL
Você pode salvar opções padrão ou usadas com frequência dos comandos em um arquivo de configuração para cada usuário.
Você pode especificar opções de comando da CodeQL CLI de duas maneiras:
- Diretamente na linha de comando, usando o sinalizador apropriado.
- Em um arquivo de configuração (ou
config
) em que o CodeQL verifica se há opções relevantes sempre que um comando é executado.
Para opções que podem ser alteradas sempre que você executa um comando, a especificação do valor na linha de comando é a maneira mais fácil de passar as informações ao CodeQL. Salvar as opções em um arquivo config
é uma boa maneira de especificar as opções que você usa com frequência. Também é uma boa maneira de adicionar pacotes personalizados do CodeQL que você sempre usa ao caminho de pesquisa.
Como usar um arquivo de configuração do CodeQL
Você precisa salvar o arquivo config
na página inicial (Linux e macOS) ou no diretório de perfil do usuário (Windows) no subdiretório .config/codeql/
. Por exemplo, $HOME/.config/codeql/config
.
A sintaxe para especificar opções é a seguinte:
<command> <subcommand> <option> <value>
Para aplicar as mesmas opções a mais de um comando, você pode:
- Omitir o
<subcommand>
, o que especificará a opção em cada<subcommand>
para o qual é relevante. - Omitir
<command>
e<subcommand>
, o que especificará globalmente a opção a cada<command>
e<subcommand>
para os quais é relevante.
Observações:
- Os arquivos
config
aceitam apenas espaços entre sinalizadores de opção e valores. O CodeQL vai gerar um erro se você usar=
para especificar um valor de opção. - Se você especificar uma opção na linha de comando, o valor
config
definido para essa opção será substituído. - Se você quiser especificar mais de uma opção para um
<command>
ou<subcommand>
globalmente, use uma linha por opção.
Exemplos
-
Para emitir todos os resultados de análise gerados pelo
codeql database analyze
no formato CSV, você especificaria:database analyze --format csv
Aqui, você precisa especificar o comando e o subcomando para impedir que um dos comandos de baixo nível executados durante
database analyze
passe a mesma opção--format
. -
Para definir a RAM (4096 MB) e o número de threads (4) a serem usados ao executar comandos do CodeQL, especifique o seguinte, em linhas separadas:
--ram 4096 --threads 4
-
Para especificar globalmente um diretório para CodeQL a fim de verificar pacotes do CodeQL (que não sejam irmãos do diretório de instalação), use:
--search-path <path-to-directory>