À propos de la configuration par défaut
La configuration par défaut de l’code scanning est la méthode la plus rapide, la plus simple et la moins exigeante en termes de maintenance pour activer l’code scanning sur votre dépôt. En fonction du code contenu dans votre dépôt, la configuration par défaut crée automatiquement une configuration d’code scanning personnalisée. Une fois la configuration par défaut activée, le code écrit dans les langages pris en charge par CodeQL dans votre référentiel sera analysé :
- À chaque envoi (push) sur la branche par défaut du dépôt, ou sur toute branche protégée. Pour plus d’informations sur les branches protégées, consultez À propos des branches protégées.
- Lors de la création ou de la validation d’une demande de tirage basée sur la branche par défaut du dépôt, ou sur toute branche protégée, à l’exclusion des demandes de tirage provenant de duplications.
- Selon une planification hebdomadaire.
Remarque
si aucune demande d’envoi ou de tirage n’a été effectuée dans un référentiel dont la configuration par défaut a été activée pendant 6 mois, la planification hebdomadaire sera désactivée pour économiser vos minutes de GitHub Actions.
Vous pouvez également activer la configuration par défaut pour plusieurs ou tous les référentiels d’une organisation en même temps. Pour plus d’informations sur l’activation en bloc, consultez Définition de la configuration par défaut pour l’analyse du code à grande échelle.
Si vous avez besoin d’exercer un contrôle plus précis sur la configuration de l’code scanning, définissez plutôt une configuration avancée. Pour plus d’informations, consultez « Configuration avancée de l’analyse du code ».
Exigences relatives à l’utilisation de la configuration par défaut
Votre référentiel est éligible à la configuration par défaut pour code scanning si :
Nous vous recommandons d’activer l’installation par défaut pour les référentiels éligibles s’il est possible que les référentiels incluent au moins un langage pris en charge par CodeQL dans le futur. Si vous activez l’installation par défaut sur un référentiel qui n’inclut aucun langage pris en charge par CodeQL, la configuration par défaut n’exécute pas d’analyses ni n’utilise de minutes GitHub Actions. Si les langages pris en charge par CodeQL sont ajoutés à la branche par défaut du référentiel, la configuration par défaut commencera automatiquement à analyser les langages pris en charge par CodeQL et à utiliser GitHub Actions minutes. Pour plus d’informations sur les langages pris en charge par CodeQL, consultez À propos de l’analyse du code avec CodeQL.
Vous pouvez utiliser la configuration par défaut pour tous les langages pris en charge par CodeQL pour les exécuteurs auto-hébergés ou les exécuteurs hébergés par GitHub. Consultez Attribuer des étiquettes aux exécuteurs plus loin dans cet article.
La configuration par défaut utilise le mode de génération none pour C/C++, C#, Java et Rust et le mode de génération autobuild pour d’autres langages compilés. Vous devez configurer vos exécuteurs auto-hébergés pour vous assurer qu’ils peuvent exécuter toutes les commandes nécessaires pour l’analyse C/C++, C# et Swift. L’analyse du code JavaScript/TypeScript, Go, Ruby, Python et Kotlin ne nécessite actuellement aucune configuration spéciale.
Personnalisation de la configuration par défaut
Nous vous recommandons de commencer à utiliser code scanning avec le programme d’installation par défaut. Une fois que vous avez initialement configuré la configuration par défaut, vous pouvez évaluer code scanning pour voir comment cela fonctionne pour vous. Si vous constatez que quelque chose ne fonctionne pas comme prévu, vous pouvez personnaliser la configuration par défaut afin de mieux répondre à vos besoins. Pour plus d’informations, consultez « Évaluation de la configuration par défaut pour l’analyse du code ».
À propos de l’ajout de nouvelles langues à votre configuration par défaut
Si le code d’un référentiel change pour inclure des langues prises en charge par CodeQL, GitHub met automatiquement à jour la configuration code scanning pour inclure la nouvelle langue. Si l’code scanning échoue avec la nouvelle configuration, GitHub reprend automatiquement la précédente afin que le dépôt ne perde pas la couverture de l’code scanning.
Définition de la configuration par défaut pour un dépôt
Remarque
Si les analyses échouent pour tous les langages pris en charge par CodeQL dans un référentiel, la configuration par défaut restera activée, mais aucune analyse ne sera effectuée et aucune minute de GitHub Actions ne sera utilisée tant qu’un autre langage pris en charge par CodeQL n’aura pas été ajouté au référentiel ou que la configuration par défaut n’aura pas été reconfigurée manuellement et que l’analyse d’un langage pris en charge par CodeQL n’aura pas réussi.
-
Sur GitHub, accédez à la page principale du référentiel.
Remarque
Si vous configurez l’installation par défaut sur une duplication, vous devez d’abord activer GitHub Actions. Pour activer GitHub Actions, sous le nom de votre référentiel, cliquez sur Actions, puis cliquez sur Je comprends mes workflows, activons-les. N’oubliez pas que cette action active tous les workflows existants sur votre duplication.
-
Sous le nom de votre référentiel, cliquez sur Paramètres. Si vous ne voyez pas l’onglet « Paramètres », sélectionnez le menu déroulant , puis cliquez sur Paramètres.

-
Dans la section « Sécurité » de la barre latérale, cliquez sur Advanced Security.
-
Sous « Code Security », à droite de « CodeQL analyse », sélectionnez Configurer , puis cliquez sur Défaut.

Vous voyez alors une boîte de dialogue « Configuration par défaut de CodeQL » qui résume la définition de l’code scanning créée automatiquement par la configuration par défaut.
-
Vous pouvez également personnaliser votre configuration de code scanning en cliquant sur Modifier.
- Pour ajouter ou supprimer un langage de l’analyse effectuée par la configuration par défaut, sélectionnez ou désélectionnez ce langage dans la section « Langages ».
- Pour spécifier la suite de requêtes CodeQL que vous souhaitez utiliser, sélectionnez votre suite de requêtes préférée dans la section « Suites de requêtes ».
-
Passez en revue les paramètres de la configuration par défaut sur votre dépôt, puis cliquez sur Activer CodeQL . Cela va déclencher un workflow permettant de tester la nouvelle configuration générée automatiquement.
Remarque
Si vous passez de la configuration avancée à la configuration par défaut, un avertissement s’affiche pour vous informer que la configuration par défaut va remplacer les configurations code scanning existantes. Cet avertissement signifie que la configuration par défaut va désactiver le fichier de workflow existant et bloquer les chargements d’API d’analyse CodeQL.
-
Si vous souhaitez voir votre configuration par défaut une fois celle-ci activée, sélectionnez , puis cliquez sur Voir la configuration de CodeQL.
Attribution d’étiquettes aux exécuteurs
Remarque
Code scanning voit les exécuteurs attribués lorsque la configuration par défaut est activée. Si un exécuteur est assigné à un référentiel qui utilise déjà la configuration par défaut, vous devez désactiver et réactiver la configuration par défaut pour commencer à utiliser l’exécuteur. Si vous ajoutez un exécuteur et souhaitez commencer à l’utiliser, vous pouvez modifier la configuration manuellement sans avoir à désactiver et réactiver la configuration par défaut.
Vous pouvez également attribuer aux exécuteurs auto-hébergés l’étiquette code-scanning par défaut, ou vous pouvez éventuellement leur attribuer des étiquettes personnalisées afin que les référentiels individuels puissent utiliser des exécuteurs différents. Pour plus d’informations sur l’attribution d’étiquettes aux exécuteurs auto-hébergés, consultez Utilisation d’étiquettes avec des exécuteurs auto-hébergés.
La spécification d’étiquettes personnalisées pour les exécuteurs auto-hébergés est facultative. Sauf cas particulier, nous vous recommandons de n’attribuer aux exécuteurs que l’étiquette code-scanning par défaut. Par exemple, vous souhaiterez peut-être :
- Attribuez des exécuteurs autonomes plus puissants aux référentiels critiques pour une analyse code scanning plus rapide.
- Exécutez vos analyses code scanning sur une plateforme particulière (par exemple, macOS).
- Contrôlez de manière précise la charge de travail de vos exécuteurs hébergés par GitHub et de vos exécuteurs auto-hébergés.
Une fois que vous avez attribué des étiquettes personnalisées aux exécuteurs auto-hébergés, vos référentiels peuvent utiliser ces exécuteurs pour la configuration par défaut de code scanning. Pour plus d’informations, consultez Configurer la configuration par défaut d’un référentiel, plus haut dans cet article.
Vous pouvez également utiliser security configurations pour attribuer des étiquettes aux exécuteurs auto-hébergés pour code scanning. Consultez Création d’une configuration de sécurité personnalisée.
Attribution de exécuteurs plus grands
Pour attribuer un exécuteur plus grand, nommez l’exécuteur code-scanning. L’étiquette code-scanning sera automatiquement ajoutée au exécuteur plus grand. Une organisation ne peut avoir qu’un seul exécuteur plus grand avec l’étiquette code-scanning, et cet exécuteur traitera toutes les tâches code scanning des référentiels au sein de votre organisation ayant accès au groupe de l’exécuteur. Consultez Configuration de runners de plus grande capacité pour la configuration par défaut.
Étapes suivantes
Une fois que votre configuration fonctionne bien au moins une fois, vous pouvez commencer à examiner et à résoudre les alertes de code scanning. Pour plus d’informations sur les alertes générées par code scanning, consultez À propos des alertes d’analyse du code et Évaluation des alertes d’analyse du code pour votre référentiel.
Une fois que vous avez configuré l’installation par défaut pour code scanning, vous pouvez vous informer sur l’évaluation de son fonctionnement et sur les prochaines étapes à suivre pour la personnaliser. Pour plus d’informations, consultez « Évaluation de la configuration par défaut pour l’analyse du code ».
Vous trouverez des informations détaillées sur votre configuration d’code scanning, notamment des horodatages pour chaque analyse et le pourcentage de fichiers analysés, dans la page d’état de l’outil. Pour plus d’informations, consultez « Utiliser la page d’état de l’outil pour l’analyse du code ».
Quand vous définissez la configuration par défaut, vous pouvez rencontrer une erreur. Pour plus d’informations sur la résolution d’erreurs spécifiques, consultez Résolution des erreurs d’analyse du code.