Partager via


Publier des status neutres sur GitHub lors des exécutions de validation avec une règle d’exclusion de chemin

Avec cette mise à jour, nous avons inclus plusieurs mises à jour d’Azure Pipelines. Sur les pipelines YAML, nous définissons refuser l’accès à tous les pipelines comme valeur par défaut pour les ressources protégées. En outre, Azure Pipelines publie une status neutre sur GitHub lorsqu’il décide de ne pas exécuter de build de validation en raison d’une règle d’exclusion de chemin.

Pour plus d’informations, consultez les descriptions des fonctionnalités suivantes.

Notes

Le 28 septembre 2021, Azure DevOps a été averti par Axosoft d’une vulnérabilité dans une dépendance de son client git GUI populaire : GitKraken. Consultez le billet de blog pour en savoir plus.

Azure Pipelines

Azure Pipelines

Publier des status neutres sur GitHub lorsqu’une build est ignorée

Avec Azure Pipelines, vous pouvez toujours valider une demande de tirage dans GitHub. Vous pouvez également spécifier les chemins d’accès dans votre dépôt GitHub qui doivent déclencher un pipeline. Par instance, le pipeline suivant est déclenché lorsqu’une modification est poussée code vers la main branche, mais pas lorsqu’une modification est envoyée au docs dossier.

trigger: none

pr:
 branches:
   include:
     - main
 paths:
   include:
     - code
   exclude:
     - docs

pool:
  vmImage: ubuntu-latest

steps:
- script: echo Hello, world!
  displayName: 'Run a one-line script'

Une fois le pipeline terminé, Azure Pipelines publie une status sur GitHub. Si vous aviez des stratégies de protection de branche en vigueur pour votre dépôt GitHub, la status publiée par Azure Pipelines a déterminé si la demande de tirage serait fusionnée.

Dans l’exemple ci-dessus, si vous avez apporté une modification à docs, GitHub bloque actuellement la demande de tirage en attente de retour d’une status par Azure Pipelines. Toutefois, Azure Pipelines n’exécute pas de build de validation, car ce chemin est exclu du déclencheur, ce qui rend impossible l’exécution de la demande de tirage. Les clients qui configurent des déclencheurs d’exclusion de chemin d’accès ou plusieurs pipelines pour un seul dépôt GitHub sont souvent confrontés à ce défi.

À l’avenir, Azure Pipelines publiera un neutral status sur GitHub lorsqu’il décide de ne pas exécuter de build de validation en raison d’une règle d’exclusion de chemin. Cela fournit une direction claire à GitHub indiquant qu’Azure Pipelines a terminé son traitement.

Mode Conversation :

Mode Conversation

Vérifiez les détails :

Vérifier les détails

L’accès à tous les pipelines est désactivé par défaut dans les ressources protégées

Un pipeline YAML peut s’appuyer sur une ou plusieurs ressources protégées. Les connexions de service, les pools d’agents, les groupes de variables, les fichiers sécurisés et les référentiels sont tous des exemples de ressources protégées, car un administrateur d’une telle ressource peut contrôler les pipelines qui ont accès à cette ressource. Les administrateurs utilisent le panneau des paramètres de sécurité de la ressource pour activer ou désactiver les pipelines.

Lorsque vous créez l’une de ces ressources, l’expérience par défaut accorde l’accès à tous les pipelines, sauf si vous la désactivez explicitement. À l’avenir, pour améliorer la posture de sécurité globale, la valeur par défaut est définie pour refuser l’accès à tous les pipelines. Pour accorder l’accès à tous les pipelines, activez simplement le bouton bascule dans l’expérience de création ou après la création de la ressource.

Nouvelle connexion de service Azure

Injecter une tâche avant ou après les tâches cibles spécifiées à l’aide d’un élément décoratif

Les décorateurs sont un moyen d’injecter automatiquement des tâches dans un pipeline. Ils sont couramment utilisés par les équipes centrales dans un organization pour exécuter automatiquement les procédures de conformité requises. Les décorateurs peuvent être utilisés avec des builds classiques, des versions classiques ou des pipelines YAML.

Actuellement, une tâche peut être injectée par le biais d’un décorateur au début de chaque travail, à la fin de chaque travail ou juste après une tâche case activée-out. Pour contrôler cela, vous spécifiez un target dans la section contribution de l’extension de l’élément décoratif, comme décrit ici. Nous développons maintenant la liste des cibles pour inclure les éléments suivants :

ms.azure-pipelines-agent-job.pre-task-tasks
ms.azure-pipelines-agent-job.post-task-tasks
ms.azure-release-pipelines-agent-job.pre-task-tasks
ms.azure-release-pipelines-agent-job.post-task-tasks

Voici un exemple de décorateur qui injecte une tâche avant chaque instance d’une PublishPipelineArtifacts tâche dans un pipeline.

{
    "manifestVersion": 1,
    "contributions": [
        {
            "id": "my-required-task",
            "type": "ms.azure-pipelines.pipeline-decorator",
            "targets": [
                "ms.azure-pipelines-agent-job.pre-task-tasks"
            ],
            "properties": {
                "template": "my-decorator.yml",
                "targettask": "ECDC45F6-832D-4AD9-B52B-EE49E94659BE"
            }
        }
    ],
    "files": [
        {
            "path": "my-decorator.yml",
            "addressable": true,
            "contentType": "text/plain"
        }
    ]
}

Annonce d’une planification de dépréciation pour les images hébergées windows 2016

Récemment, nous avons rendu Windows 2022 disponible en tant qu’image hébergée. Avec la fin prochaine de la prise en charge standard de Windows 2016 en janvier 2022, nous déprécions vs2017-win2016 les images à partir du 15 novembre. La mise hors service complète de cette image est prévue pour mars 2022. Étant donné qu’il s’agit d’une image couramment utilisée, nous voulions vous donner suffisamment de préavis et de temps pour apporter les modifications nécessaires à vos pipelines.

Reportez-vous à notre billet de blog pour savoir comment rechercher tous les projets et pipelines à l’aide d’une image hébergée windows 2016, ainsi que les étapes à suivre pour migrer vers des versions plus récentes.

Annonce de la dépréciation des images hébergées macOS 10.14

Récemment, nous avons rendu macOS-11 disponible en tant qu’image hébergée. Par conséquent, nous déprécierons l’image macOS-10.14 en décembre 2021. Les builds qui s’appuient sur cette image échouent une fois qu’elle est déconseillée. Vous trouverez plus de détails sur la dépréciation de diverses images dans notre billet de blog.

Étapes suivantes

Notes

Ces fonctionnalités seront déployées au cours des deux à trois prochaines semaines.

Accédez à Azure DevOps et jetez un coup d’œil.

Comment fournir des commentaires

Nous aimerions savoir ce que vous pensez de ces fonctionnalités. Utilisez le menu Aide pour signaler un problème ou faire une suggestion.

Faire une suggestion

Vous pouvez également obtenir des conseils et répondre à vos questions par la communauté sur Stack Overflow.

Merci,

Vijay Machiraju