Ce contenu décrit la version la plus récente de CodeQL CLI. Pour plus d’informations sur cette version, consultez https://github.com/github/codeql-cli-binaries/releases.
Pour voir les détails des options disponibles pour cette commande dans une version antérieure, exécutez la commande avec l’option --help
dans votre terminal.
Synopsis
codeql test extract <options>... -- <testDir>
codeql test extract <options>... -- <testDir>
Description
[Plomberie] Génère un jeu de données pour un répertoire de test.
Crée une base de données pour un répertoire de test spécifié, sans exécuter réellement de requêtes de test. Génère le chemin du jeu de données QL brut sur lequel exécuter les requêtes de test.
Options
Options principales
<testDir>
[Obligatoire] Chemin du répertoire de test.
--database=<dir>
Remplace l’emplacement de la base de données en cours de création. Par défaut, il s’agit d’un sous-répertoire dont le nom est dérivé du nom du répertoire de test lui-même avec « .testproj » en plus.
--search-path=<dir>[:<dir>...]
Liste des répertoires sous lesquels les packs d’extracteur peuvent être trouvés. Les répertoires peuvent être les packs d’extracteur eux-mêmes ou les répertoires qui contiennent les extracteurs en tant que sous-répertoires immédiats.
Si le chemin contient plusieurs arborescences de répertoires, leur ordre définit la priorité entre elles : si le langage cible est mis en correspondance dans plusieurs arborescences de répertoires, celle donnée en premier gagne.
Les extracteurs en bundle avec la chaîne d’outils CodeQL elle-même sont toujours trouvés, mais si vous devez utiliser des extracteurs distribués séparément, vous devez donner cette option (ou, mieux encore, configurer --search-path
dans un fichier de configuration par utilisateur).
(Remarque : Sur Windows, le séparateur de chemin est ;
.)
--cleanup
Supprime la base de données de test au lieu de la créer.
--[no-]show-extractor-output
[Avancé] Affiche la sortie des scripts d’extracteur qui créent les bases de données de test. Peut être utile lors du développement ou de la modification de cas de test. Attention, cela peut générer une sortie dupliquée ou incorrecte si vous l’utilisez avec plusieurs threads !
--[no-]check-undefined-labels
[Avancé] Signale les erreurs pour les étiquettes non définies.
--[no-]check-unused-labels
[Avancé] Signale les erreurs pour les étiquettes non utilisées.
--[no-]check-repeated-labels
[Avancé] Signale les erreurs pour les étiquettes répétées.
--[no-]check-redefined-labels
[Avancé] Signale les erreurs pour les étiquettes redéfinies.
--[no-]check-use-before-definition
[Avancé] Signale les erreurs pour les étiquettes utilisées avant leur définition.
--[no-]fail-on-trap-errors
[Avancé] Sort une valeur non nulle si une erreur se produit lors de l’importation d’un fichier TRAP.
--[no-]include-location-in-star
[Avancé] Construit des ID d’entité qui encodent l’emplacement dans le fichier TRAP dont ils proviennent. Peut être utile pour le débogage des générateurs TRAP, mais prend beaucoup d’espace dans le jeu de données.
--[no-]linkage-aware-import
[Avancé] Contrôle si l’importation de jeu de données codeql prend en compte les liaisons (par défaut) ou non. Sur les projets dans lesquels cette partie de la création de base de données consomme trop de mémoire, la désactivation de cette option peut les aider à progresser au détriment de la complétion de la base de données.
Disponible depuis v2.15.3
.
--format=<fmt>
Sélectionne le format de sortie text
(par défaut) ou json
.
Options courantes
-h, --help
Affiche ce texte d’aide.
-J=<opt>
[Avancé] Donne une option à l’environnement JVM exécutant la commande.
(Attention, les options contenant des espaces ne sont pas gérées correctement.)
-v, --verbose
Augmente de façon incrémentielle le nombre de messages de progression affichés.
-q, --quiet
Diminue de façon incrémentielle le nombre de messages de progression affichés.
--verbosity=<level>
[Avancé] Définit explicitement le niveau de détail sur errors, warnings, progress, progress+, progress++ ou progress+++. Remplace -v
et -q
.
--logdir=<dir>
[Avancé] Écrit des journaux détaillés dans un ou plusieurs fichiers du répertoire donné, avec des noms générés qui incluent des horodatages et le nom de la sous-commande en cours d’exécution.
(Pour écrire un fichier journal avec un nom sur lequel vous avez un contrôle total, donnez plutôt --log-to-stderr
et redirigez stderr comme vous le souhaitez.)
--common-caches=<dir>
[Avancé] Contrôle l’emplacement des données en cache sur le disque qui persisteront entre plusieurs exécutions de l’interface CLI, telles que les packs QL téléchargés et les plans de requête compilés. S’il n’est pas défini explicitement, il s’agit par défaut d’un répertoire nommé .codeql
dans le répertoire de base de l’utilisateur. S’il n’existe pas déjà, il est créé.
Disponible depuis v2.15.2
.