{"meta":{"title":"Packs de requêtes CodeQL","intro":"Vous pouvez choisir parmi différentes suites de requêtes CodeQL intégrées à utiliser dans votre configuration d’code scanning CodeQL.","product":"Sécurité et qualité du code","breadcrumbs":[{"href":"/fr/code-security","title":"Sécurité et qualité du code"},{"href":"/fr/code-security/concepts","title":"Concepts"},{"href":"/fr/code-security/concepts/code-scanning","title":"Analyse du code"},{"href":"/fr/code-security/concepts/code-scanning/codeql","title":"CodeQL"},{"href":"/fr/code-security/concepts/code-scanning/codeql/codeql-query-packs","title":"Packs de requêtes CodeQL"}],"documentType":"article"},"body":"# Packs de requêtes CodeQL\n\nVous pouvez choisir parmi différentes suites de requêtes CodeQL intégrées à utiliser dans votre configuration d’code scanning CodeQL.\n\n## À propos des packs CodeQL\n\nLes packs CodeQL sont utilisés pour créer, partager et exécuter des requêtes et des bibliothèques CodeQL ainsi que pour définir une dépendance à celles-ci. Vous pouvez personnaliser votre analyse CodeQL en téléchargeant des packs créés par d'autres utilisateurs et en les exécutant sur votre codebase.\n\nChaque pack CodeQL nécessite un fichier `qlpack.yml` dans son répertoire racine qui spécifie :\n\n* Comment compiler les requêtes\n* Dépendances sur d’autres CodeQL packs et bibliothèques\n* Définitions de suite de requêtes\n\nPour plus d’informations sur les propriétés `qlpack.yml`, consultez [Personnalisation de l’analyse avec des packs CodeQL](/fr/code-security/codeql-cli/getting-started-with-the-codeql-cli/customizing-analysis-with-codeql-packs#codeqlpack-yml-properties).\n\nEn outre, un pack CodeQL peut contenir :\n\n* Requêtes personnalisées (fichiers `.ql`)\n* Fichiers de bibliothèque\n* Suites de requêtes\n* Métadonnées\n\nLe bundle de l’CodeQL CLI inclut des requêtes gérées par les experts GitHub, les chercheurs en sécurité et les contributeurs de la communauté. Si vous souhaitez exécuter des requêtes développées par d’autres organisations, les packs de requêtes CodeQL offrent un moyen efficace et fiable de télécharger et d’exécuter des requêtes, tandis que les packs de modèles (préversion publique) peuvent être utilisés pour développer l’analyse code scanning afin de reconnaître les bibliothèques et les infrastructures qui ne sont pas prises en charge par défaut.\n\n## Types de packs CodeQL\n\nIl existe trois types de packs CodeQL : les packs de requêtes, les packs de bibliothèques et les packs de modèles.\n\n* Les packs de requêtes contiennent un ensemble de requêtes précompilées qui peuvent être évaluées sur une base de données CodeQL. Les packs de requêtes sont conçus pour être exécutés. Quand un pack de requêtes est publié, le paquet inclut toutes les dépendances transitives et les représentations pré-compilées de chaque requête en plus des sources des requêtes. Ceci garantit une exécution cohérente et efficace des requêtes dans le pack.\n\n* Les packs de bibliothèques sont conçus pour être utilisés par des packs de requêtes (ou d’autres packs de bibliothèques) et ne contiennent pas de requêtes. Les bibliothèques ne sont pas compilées séparément.\n\n* Les packs de modèles peuvent être utilisés pour étendre l'analyse code scanning afin de reconnaître les bibliothèques et les infrastructures qui ne sont pas prises en charge par défaut. Les packs de modèles sont actuellement en préversion publique et sont susceptibles d'être modifiés. Pendant la phase de préversion publique, les packs de modèles sont disponibles pour l’analyse C/C++, C#, Java/Kotlin, Python, Ruby et Rust. Pour plus d'informations sur la création de vos propres packs de modèles, consultez [Création et utilisation de packs CodeQL](/fr/code-security/codeql-cli/using-the-advanced-functionality-of-the-codeql-cli/creating-and-working-with-codeql-packs#creating-a-codeql-model-pack).\n\n## Où trouver des packs de requêtes\n\nLes packs CodeQL standard pour tous les langages pris en charge sont publiés dans le [Container registry](https://github.com/orgs/codeql/packages). Si vous avez installé CodeQL CLI de manière standard, en utilisant le bundle CodeQL CLI, les packs de requêtes de base sont déjà téléchargés et disponibles. Elles sont les suivantes :\n\n* `codeql/cpp-queries`\n* `codeql/csharp-queries`\n* `codeql/go-queries`\n* `codeql/java-queries`\n* `codeql/javascript-queries`\n* `codeql/python-queries`\n* `codeql/ruby-queries`\n* `codeql/swift-queries`\n\nPour plus d’informations sur la compatibilité entre les packs de requêtes publiés et les différentes versions de CodeQL, consultez [Informations de référence sur les packs de requêtes CodeQL](/fr/code-security/reference/code-scanning/codeql/codeql-cli/codeql-query-packs#codeql-pack-compatibility).\n\nVous pouvez également utiliser la CodeQL CLI pour créer vos propres packs CodeQL, ajouter des dépendances aux packs et installer ou mettre à jour des dépendances.\n\n## Publication et partage des packs CodeQL\n\nVous pouvez partager des requêtes personnalisées avec la communauté plus large CodeQL par :\n\n* Publication sur GitHub Packages : Rendre votre pack accessible au public pour qu'ils puissent le découvrir et l'utiliser.\n* Contribuer au dépôt CodeQL : soumettez des requêtes utiles à la communauté étendue en ouvrant une demande de tirage (pull request) sur le dépôt officiel.\n\nPour plus d’informations sur la publication et le téléchargement de packs CodeQL, consultez [Publication et utilisation de packs CodeQL](/fr/code-security/codeql-cli/using-the-advanced-functionality-of-the-codeql-cli/publishing-and-using-codeql-packs).\n\nPour plus d’informations sur la contribution à CodeQL, consultez [Contribution à CodeQL](https://github.com/github/codeql/blob/main/CONTRIBUTING.md)."}