Post neutral status to GitHub on validation runs with path exclusion rule

Com essa atualização, incluímos várias atualizações no Azure Pipelines. Em pipelines YAML, estamos definindo negar acesso a todos os pipelines como o padrão para recursos protegidos. Além disso, o Azure Pipelines postará uma status neutra de volta ao GitHub quando decidir não executar um build de validação devido a uma regra de exclusão de caminho.

Confira as descrições de recursos a seguir para obter detalhes.

Observação

Em 28 de setembro de 2021, o Azure DevOps foi notificado pela Axosoft de uma vulnerabilidade em uma dependência de seu popular cliente git GUI – GitKraken. Confira a postagem no blog para saber mais detalhes.

Azure Pipelines

Azure Pipelines

Post neutral status no GitHub quando um build é ignorado

Com o Azure Pipelines, você sempre pode validar uma solicitação de pull no GitHub. Você também pode especificar quais caminhos no repositório GitHub devem disparar um pipeline. Por exemplo, o pipeline a seguir é disparado quando uma alteração é enviada por push para code no main branch, mas não é disparada quando uma alteração é enviada por push para a docs pasta.

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'

Depois que o pipeline for concluído, o Azure Pipelines postará um status de volta no GitHub. Se você tiver políticas de proteção de branch em vigor para seu repositório GitHub, a status postada pelo Azure Pipelines determinou se a solicitação de pull seria mesclada.

No exemplo acima, se você fez uma alteração no docs, o GitHub bloqueia atualmente a solicitação de pull aguardando que um status seja retornado pelo Azure Pipelines. No entanto, o Azure Pipelines não executa um build de validação, pois esse caminho é excluído do gatilho, impossibilitando a conclusão da solicitação de pull. Os clientes que configuram gatilhos de exclusão de caminho ou vários pipelines para um único repositório GitHub frequentemente enfrentavam esse desafio.

Seguindo em frente, o Azure Pipelines postará um neutral status de volta ao GitHub quando decidir não executar um build de validação devido a uma regra de exclusão de caminho. Isso fornecerá uma direção clara para o GitHub indicando que o Azure Pipelines concluiu seu processamento.

Exibição de conversa:

Exibição de conversa

Verifique os detalhes:

Verificar detalhes

O acesso a todos os pipelines está desativado por padrão em recursos protegidos

Um pipeline YAML pode contar com um ou mais recursos protegidos. Conexões de serviço, pools de agentes, grupos de variáveis, arquivos seguros e repositórios são exemplos de recursos protegidos, pois um administrador desse recurso pode controlar quais pipelines têm acesso a esse recurso. Os administradores usam o painel de configurações de segurança do recurso para habilitar ou desabilitar pipelines.

Quando você cria um desses recursos, a experiência padrão concede acesso a todos os pipelines, a menos que você o desative explicitamente. Seguindo em frente, para melhorar a postura geral de segurança, o padrão está sendo definido para negar o acesso a todos os pipelines. Para conceder acesso a todos os pipelines, basta ativar a alternância na experiência de criação ou depois que o recurso for criado.

Nova conexão de serviço do Azure

Injetar tarefa antes ou depois das tarefas de destino especificadas usando um decorador

Decoradores são uma maneira de injetar tarefas automaticamente em um pipeline. Eles são comumente usados por equipes centrais em uma organização para executar automaticamente os procedimentos de conformidade necessários. Os decoradores podem ser usados com builds clássicos, versões clássicas ou pipelines YAML.

Atualmente, uma tarefa pode ser injetada por meio de um decorador no início de cada trabalho, no final de cada trabalho ou logo após uma tarefa de marcar. Para controlar isso, especifique um target na seção de contribuição da extensão do decorador, conforme descrito aqui. Agora estamos expandindo a lista de destinos para incluir o seguinte:

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

Aqui está um exemplo de um decorador que injeta uma tarefa antes de cada instância de uma PublishPipelineArtifacts tarefa em um 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"
        }
    ]
}

Anunciando um cronograma de substituição para imagens hospedadas do Windows 2016

Recentemente, disponibilizamos o Windows 2022 como uma imagem hospedada. Com o próximo fim do suporte base para o Windows 2016 em janeiro de 2022, estamos substituindo vs2017-win2016 imagens a partir de 15 de novembro. A desativação completa dessa imagem está prevista para março de 2022. Como essa é uma imagem comumente usada, queríamos dar a você um aviso e tempo suficientes para fazer as alterações necessárias em seus pipelines.

Consulte nossa postagem no blog detalhando como localizar todos os projetos e pipelines usando a imagem hospedada do Windows 2016 e as etapas que você pode executar para migrar para versões mais recentes.

Anunciando a substituição de imagens hospedadas no macOS 10.14

Recentemente, disponibilizamos o macOS-11 como uma imagem hospedada. Como resultado, vamos preterir a imagem do macOS-10.14 em dezembro de 2021. Compilações que dependem dessa imagem falharão depois que ela for preterida. Você pode encontrar mais detalhes sobre a substituição de várias imagens de nossa postagem no blog.

Próximas etapas

Observação

Esses recursos serão lançados nas próximas duas a três semanas.

Vá até o Azure DevOps e dê uma olhada.

Como fornecer comentários

Adoraríamos ouvir o que você pensa sobre esses recursos. Use o menu de ajuda para relatar um problema ou fornecer uma sugestão.

Fazer uma sugestão

Você também pode receber conselhos e suas perguntas respondidas pela comunidade no Stack Overflow.

Obrigada,

Vijay Machiraju