à 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 lâinstallation 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) vers la branche par dĂ©faut du rĂ©fĂ©rentiel, ou 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 rĂ©fĂ©rentiel, 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 GitHub Actions minutes.
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 de la configuration par dĂ©faut pour 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 :
- GitHub Actions sont activés.
- GitHub Code Security est activé.
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# et Java et utilise le mode de génération autobuild
pour dâautres langages compilĂ©s. Vous devez donc 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 langages compilĂ©s et non compilĂ©s Ă votre configuration par dĂ©faut
Si le code dâun rĂ©fĂ©rentiel change pour inclure Go, JavaScript/TypeScript, Python ou Ruby, GitHub met automatiquement Ă jour la configuration code scanning pour inclure le nouveau langage. 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.
Les langages compilĂ©s ne sont pas automatiquement inclus dans la configuration par dĂ©faut, car ils nĂ©cessitent souvent une configuration plus avancĂ©e, mais vous pouvez sĂ©lectionner manuellement nâimporte quel langage compilĂ© pris en charge par CodeQL pour lâanalyse.
DĂ©finition de lâinstallation par dĂ©faut pour un rĂ©fĂ©rentiel
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 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 aura 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 flux de travail, allez de avant et activez-les. Nâoubliez pas que cette action active tous les flux de travail existants sur votre fork.
-
Sous le nom de votre dĂ©pĂŽt, 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.
-
à droite de « Code Security », cliquez sur Activer.
-
Sous « Code Security », à droite de « Analyse CodeQL », sélectionnez Configurer , puis cliquez sur Par 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.
Remarque
Si votre rĂ©fĂ©rentiel contient uniquement des langages compilĂ©s pris en charge par CodeQL (par exemple, Java), vous ĂȘtes redirigĂ© vers la page des paramĂštres pour sĂ©lectionner les langages que vous souhaitez ajouter Ă la configuration par dĂ©faut.
-
Vous pouvez également personnaliser votre installation 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 ». Si vous souhaitez analyser un langage compilĂ© pris en charge par CodeQL avec la configuration par dĂ©faut, sĂ©lectionnez ce langage ici.
- 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 lâinstallation par dĂ©faut sur votre rĂ©fĂ©rentiel, puis cliquez sur Activer CodeQL. Cela va dĂ©clencher un flux de travail 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 dâ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.
Attribuer des é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 par dĂ©faut code-scanning
. Par exemple, vous pouvez :
- Attribuez des exécuteurs autonomes plus puissants aux référentiels essentiels 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 granulaire 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.
Ătapes suivantes
Une fois que votre configuration fonctionne bien au moins une fois, vous pouvez commencer Ă examiner et Ă rĂ©soudre les alertes code scanning. Pour plus dâinformations sur les alertes 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 « Ă propos de 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 des problĂšmes spĂ©cifiques, consultez RĂ©solution des problĂšmes dâanalyse du code.