Skip to main content

Définir la protection de fusion d’analyse du code

You can use rulesets to set code scanning merge protection for pull requests.

Qui peut utiliser cette fonctionnalité ?

Code scanning est disponible pour tous les dépôts publics sur GitHub.com. Pour utiliser code scanning dans un dépôt privé appartenant à une organisation, vous devez avoir une licence pour GitHub Advanced Security. Pour plus d’informations, consultez « À propos de GitHub Advanced Security ».

À propos de l’utilisation d’ensembles de règles pour la protection de fusion code scanning

Remarques :

  • Cette fonctionnalité est actuellement en version bêta et est sujette à modification.
  • La protection de fusion avec des ensembles de règles n’est pas liée aux vérifications d’état. Pour plus d’informations sur les vérifications d’état, consultez « À propos des vérifications d’état. »

Vous pouvez utiliser des ensembles de règles pour empêcher la fusion des demandes de tirage (pull request) lorsque l’une des conditions suivantes est remplie :

  • Un outil requis a trouvé une alerte code scanning d’une gravité définie dans un ensemble de règles.

  • L’analyse de l’outil code scanning requise est toujours en cours.

  • Un outil code scanning requis n’est pas configuré pour le référentiel.

Pour plus d’informations sur les alertes code scanning, consultez « À propos des alertes d’analyse du code. »

Vous pouvez définir la protection de fusion avec des ensembles de règles au niveau du référentiel ou de l’organisation, et pour les référentiels configurés avec l’installation par défaut ou l’installation avancée. Vous pouvez également utiliser l’API REST pour définir la protection de fusion avec des ensembles de règles.

Pour plus d’informations sur les ensembles de règles, consultez « À propos des ensembles de règles ».

Création d’un ensemble de règles de protection de fusion pour un référentiel

  1. Dans GitHub.com, accédez à la page principale du dépôt.

  2. 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.

    Capture d’écran d’un en-tête de dépôt montrant les onglets. L’onglet « Paramètres » est mis en évidence avec un encadré orange foncé.

  3. Dans la barre latérale gauche, sous « Code et automatisation », cliquez sur Règles, puis sur Ensembles de règles.

    Capture d’écran de la barre latérale de la page « Paramètres » d’un dépôt. Le sous-menu « Règles » est développé et l’option « Ensembles de règles » est encadrée en orange.

  4. Cliquez sur Nouveau jeu de données.

  5. Pour créer un ensemble de règles ciblant des branches, cliquez sur Nouvel ensemble de règles de branche.

  6. Sous « Nom de l’ensemble de règles », tapez un nom pour l’ensemble de règles.

  7. Si vous le souhaitez, pour modifier l’état d’application par défaut, cliquez sur Désactivé et sélectionnez un état d’application. Pour plus d’informations sur les états de mise en œuvre, consultez « À propos des ensembles de règles ».

  8. Sous « Protections de branche », sélectionnez Exiger des résultats code scanning.

  9. Sous « Outils et seuils d’alerte requis », cliquez sur Ajouter un outil et sélectionnez un outil code scanning dans la liste déroulante. Par exemple, « CodeQL ».

  10. À côté du nom d’un outil code scanning :

    • Cliquez sur Alertes et sélectionnez l’une des alertes : Aucun, Erreurs, Erreurs et Avertissements ou Tout.
    • Cliquez sur Alertes de sécurité et sélectionnez l’une des alertes suivantes : Aucun, Critique, Élevé ou supérieur, Moyen ou Supérieur, ou Tout.

    Capture d’écran de la section « Outils et seuils d’alerte requis » des paramètres « Ensembles de règles ».

Pour plus d’informations sur les niveaux de gravité d’alerte et de sécurité, consultez « À propos des alertes d’analyse du code ».

Pour plus d’informations sur la gestion des ensembles de règles dans un référentiel, consultez « Gestion des ensembles de règles d’un dépôt. »

Création d’un ensemble de règles de protection de fusion pour tous les référentiels d’une organisation

  1. Dans l’angle supérieur droit de GitHub.com, sélectionnez votre photo de profil, puis sur Vos organisations.

    Capture d’écran du menu déroulant sous l’image de profil de @octocat. « Vos organisations » est présenté en orange foncé.

  2. En regard de l’organisation, cliquez sur Paramètres.

  3. Dans la barre latérale gauche, dans la section « Code, planification et automatisation », cliquez sur Référentiel , puis sur Ensembles de règles.

    Capture d’écran de la page des paramètres d’une organisation. Dans la barre latérale, un lien intitulé « Ensembles de règles » est encadré en orange.

  4. Cliquez sur Nouveau jeu de données.

  5. Pour créer un ensemble de règles ciblant des branches, cliquez sur Nouvel ensemble de règles de branche.

  6. Sous « Nom de l’ensemble de règles », tapez un nom pour l’ensemble de règles.

  7. Si vous le souhaitez, pour modifier l’état d’application par défaut, cliquez sur Désactivé et sélectionnez un état d’application. Pour plus d’informations sur les états de mise en œuvre, consultez « À propos des ensembles de règles ».

  8. Sous « Protections de branche », sélectionnez Exiger des résultats code scanning.

  9. Sous « Outils et seuils d’alerte requis », cliquez sur Ajouter un outil et sélectionnez un outil code scanning dans la liste déroulante. Par exemple, « CodeQL ».

  10. À côté du nom d’un outil code scanning :

    • Cliquez sur Alertes et sélectionnez l’une des alertes : Aucun, Erreurs, Erreurs et Avertissements ou Tout.
    • Cliquez sur Alertes de sécurité et sélectionnez l’une des alertes suivantes : Aucun, Critique, Élevé ou supérieur, Moyen ou Supérieur, ou Tout.

    Capture d’écran de la section « Outils et seuils d’alerte requis » des paramètres « Ensembles de règles ».

Pour plus d’informations sur les niveaux de gravité d’alerte et de sécurité, consultez « À propos des alertes d’analyse du code ».

Pour plus d’informations sur la gestion des ensembles de règles pour les référentiels d’une organisation, consultez « Gestion des ensembles de règles pour les dépôts de votre organisation. »

Création d’un ensemble de règles de protection de fusion avec l’API REST

Vous pouvez utiliser l’API REST pour créer un ensemble de règles avec la règle code_scanning, ce qui vous permet de définir des outils spécifiques et de définir des seuils d’alerte. Pour plus d’informations, consultez « Points de terminaison d’API REST pour les règles ».