Compartilhar via


Suporte ao GitHub Enterprise e conexões automáticas de serviço do GitHub em pipelines de compilação - Atualização da Sprint 146

Na atualização Sprint 146 do Azure DevOps, melhoramos nossa integração do GitHub com o Azure Pipelines. O assistente Novo pipeline de build agora pode criar pipelines para repositórios do GitHub Enterprise. Ele também analisa seu repositório para fornecer um modelo de linguagem sugerido. Além disso, ele pode criar e reutilizar conexões de serviço para os repositórios do GitHub selecionados.

Confira a lista de recursos abaixo para saber mais.

Recursos

Geral:

Azure Boards:

Azure Pipelines:

Azure Artifacts:

Wiki:

Geral

Restaurar projetos excluídos

Nesta atualização, adicionamos a capacidade de restaurar projetos excluídos do portal de DevOps do Azure. Se você tiver a permissão "excluir projeto", também poderá restaurar um projeto excluído da Página de Visão Geral das Configurações > da Organização.

Azure Boards

Simplifique a organização do seu trabalho usando o processo Básico

Importante

O processo Básico está em visualização pública como o processo padrão para novos projetos dentro de novas organizações criadas na região Central dos EUA.

Historicamente, o Agile tem sido o processo padrão para novos projetos, oferecendo um conjunto robusto e flexível de tipos e estados de itens de trabalho para se adequar a uma variedade de métodos de entrega de projetos. Para algumas equipes, que estão mais familiarizadas com outras ferramentas ou que estão crescendo e querem adotar um conjunto de ferramentas mais poderoso, querem começar rapidamente a usar terminologia com a qual estão mais familiarizadas.

O novo processo Básico fornece três tipos de item de trabalho (Épicos, Problemas e Tarefas) para planejar e controlar seu trabalho. Recomendamos que você use Problemas para rastrear coisas como histórias de usuários, bugs e recursos enquanto usa o Epics para agrupar Problemas em unidades maiores de trabalho. À medida que você avança em seu trabalho, mova itens ao longo de um fluxo de trabalho de estado simples de Fazer, Fazer e Concluído.

Organize work using the Basic process.

Consulte a documentação de controlar problemas e tarefas para ajudá-lo a começar com seu novo projeto.

Azure Pipelines

Suporte ao GitHub Enterprise no assistente de pipeline

Anteriormente, você podia usar o designer visual para criar pipelines para repositórios do GitHub Enterprise. Agora, você também pode usar o assistente de novo pipeline de compilação para criar seus pipelines.

GitHub Enterprise support in the pipeline wizard.

O assistente analisa o repositório do GitHub Enterprise para sugerir um modelo YAML que corresponda ao idioma do projeto. Em seguida, você pode editar e salvar o YAML como uma confirmação direta para sua ramificação padrão ou como uma solicitação pull.

Edit and save the YAML.

Para obter mais detalhes, consulte a documentação sobre como criar seu primeiro pipeline aqui.

Conexões automáticas do serviço do GitHub nos pipelines

Ao usar o assistente para Novo pipeline de compilação para criar um pipeline para o GitHub, a página para escolher ou criar uma conexão de serviço do GitHub levou à confusão sobre qual conexão selecionar na lista. Agora, você não precisa escolher uma conexão. O assistente cria e reutiliza automaticamente uma conexão de serviço para o repositório escolhido.

Se você deseja escolher manualmente uma conexão diferente daquela que é selecionada automaticamente, siga o hiperlink Escolher conexão . Para obter mais detalhes, consulte Criar repositórios do GitHub.

Observação

A seleção é baseada no Aplicativo GitHub do Azure Pipelines (se estiver instalado no repositório) ou em sua identidade pessoal do GitHub (usando OAuth).

Exibir o status de cada trabalho de pipeline em verificações do GitHub

Anteriormente, um único status de compilação era postado no GitHub Checks para seu pipeline, mesmo que incluísse trabalhos para várias plataformas (por exemplo, Linux, macOS e Windows). Agora, o status é postado em Verificações do GitHub para cada trabalho no pipeline. Além disso, você pode executar novamente toda a compilação ou apenas trabalhos com falha individuais a partir de verificações do GitHub. Para usar essa funcionalidade, seu pipeline deve ser configurado para usar o Aplicativo GitHub do Azure Pipelines. Para obter detalhes adicionais, consulte Integrar usando o aplicativo GitHub. Para configurar um pipeline com trabalhos para várias plataformas, consulte Criar um pipeline multiplataforma.

Display status for each pipeline job.

Autorização padrão para recursos do YAML no GitHub

Se você gerenciar seu código-fonte no GitHub e usar o YAML para definir seu pipeline, provavelmente ocorreu uma falha de compilação de autorização de recursos. Quando você editou seu arquivo YAML e adicionou uma referência a um dos recursos protegidos (por exemplo, conexão de serviço, pool de agentes, grupo de variáveis ou arquivo seguro), o Azure Pipelines não pôde validar a identidade do usuário que fez essa alteração e falhou na compilação. Para contornar esse problema, você tinha que salvar o pipeline de compilação no editor da Web depois de fazer uma alteração no arquivo YAML. Muitos dos usuários que atingiram esse problema simplesmente queriam permitir que todos os pipelines usassem o recurso.

Para evitar a falha de compilação de autorização de recursos, alteramos o comportamento padrão de todas as novas conexões de serviço, pools de agentes e grupos de variáveis a serem autorizados para uso em todos os pipelines. Se você quiser controles mais rígidos sobre seus recursos, poderá desabilitar o modelo de autorização padrão (consulte a figura abaixo). Ao fazer isso, alguém com permissões para usar o recurso deve salvar o pipeline no editor da Web depois que uma referência de recurso for adicionada ao arquivo YAML.

Default authorization for YAML resources.

Contêineres de serviço para pipelines do YAML

Anteriormente, você tinha que instalar, iniciar e parar serviços como bancos de dados ou caches de memória se o pipeline YAML estivesse usando esses serviços. Com essa atualização, adicionamos contêineres de serviço que podem lidar com essas tarefas. Por exemplo, se o pipeline usar um cache redis para testes de integração, você poderá incluir a imagem do contêiner redis como um serviço no pipeline. O agente buscará automaticamente a imagem, iniciá-la e conectá-la em rede para que suas etapas de pipeline possam se referir a ela pelo nome de host redis. Quando o pipeline estiver concluído, o agente girará o contêiner de serviço de forma limpa.

Itens de trabalho vinculados a confirmações do GitHub no Resumo da Versão

Em dezembro, introduzimos a capacidade de vincular confirmações do GitHub a itens de trabalho. Temos o prazer de anunciar que agora você pode ver todos os itens de trabalho do Azure Boards vinculados a confirmações do GitHub na página de resumo da versão. Isso ajudará as equipes a rastrear e recuperar mais informações sobre as confirmações que foram implantadas em um ambiente.

Novas tarefas do Serviço de Aplicativo do Azure otimizadas para YAML

Agora damos suporte a quatro novas tarefas que fornecem uma maneira fácil, mas poderosa, de implantar os Serviços de Aplicativo do Azure com os desenvolvedores modernos em mente. Essas tarefas têm uma sintaxe YAML otimizada, tornando simples e intuitivo criar implantações no Azure AppServices, incluindo WebApps, FunctionApps, WebApps for Containers e FunctionApp for Containers em plataformas Windows e Linux.

Também oferecemos suporte a uma nova tarefa de utilitário para transformação de arquivos e substituição de variáveis para formatos XML e JSON.

Suporte à autenticação do Azure Active Directory (AD) para a tarefa SQL do Azure

A tarefa SQL do Azure foi aprimorada para oferecer suporte à conexão com um banco de dados usando o Azure AD (Senha Integrada ao Nome) e uma cadeia de conexão, além do suporte existente para autenticação do SQL Server.

Azure AD authentication support for Azure SQL task.

Gancho de serviço de anotações do Grafana

Agora oferecemos suporte a um novo gancho de serviço que permite adicionar anotações do Grafana para eventos de Implantação Concluída a um painel do Grafana. Isso permite correlacionar as implantações com as alterações nas métricas de aplicativo ou infraestrutura que estão sendo visualizadas em um painel do Grafana.

Grafana annotations service hook.

Consultar tarefas de alertas do Azure Monitor

A versão anterior da tarefa Monitores do Azure de Consulta dava suporte a alertas de consulta somente na experiência de monitoramento clássica. Com esta nova versão da tarefa, você pode consultar alertas sobre a experiência de monitoramento unificada introduzida recentemente pelo Azure Monitor.

Query Azure Monitor alerts tasks.

Entrada embutida do arquivo de especificações a implantar em uma tarefa do Kubernetes

Anteriormente, a tarefa de implantação do Kubernetes exigia que você fornecesse um caminho de arquivo para a configuração. Agora você também pode adicionar a configuração embutida.

Inline input of spec file in Deploy to Kubernetes task.

Tarefa de Instalador da CLI do Docker

Essa tarefa permite a instalação de qualquer versão da CLI do Docker nos agentes, conforme especificado pelo usuário.

Docker CLI Installer task.

LTS (suporte de longo prazo) do Java em agentes hospedados da Microsoft

Anteriormente, os agentes hospedados pela Microsoft tinham JDKs pré-instalados que estavam sobrecarregados por licenciamento complexo, restrições de usuário final e falta de suporte de longo prazo. Nesta atualização, substituímos os JDKs por compilações LTS testadas e certificadas do OpenJDK da Azul Systems. Os desenvolvedores Java que usam o Azure agora podem criar e executar aplicativos Java de produção usando compilações do Azul Systems Zulu Enterprise do OpenJDK sem incorrer em custos adicionais de suporte.

Esta nova oferta foi projetada para tornar as compilações e implantações Java hospedadas pela Microsoft livres de preocupações, incorporando atualizações de segurança trimestrais e correções de bugs, bem como atualizações e patches críticos fora de banda, conforme necessário. Se você estiver criando ou executando aplicativos Java no local ou com outros JDKs, considere migrar para o Zulu no Azure para suporte e manutenção gratuitos. Para obter mais informações, consulte o blog Microsoft e Azul Systems trazem suporte gratuito a Java LTS para o Azure.

Suporte do YAML para pipelines de nuvem Bitbucket

Anteriormente, os pipelines baseados em YAML não ofereciam suporte ao Bitbucket Cloud. Agora, você pode usar o YAML para definir seus pipelines do Bitbucket Cloud ou usar o designer visual para fazer o mesmo. Para usar o YAML, adicione um arquivo azure-pipelines.yml ao seu repositório. Em Azure Pipelines, escolha Novo pipeline de compilação e, em seguida, selecione Usar o hiperlink do designer visual, selecione "Bitbucket Cloud" e "YAML". Aqui você pode inserir o caminho para o arquivo YAML do seu repositório.

Para obter mais detalhes, consulte o guia de sintaxe YAML e o repositório GitHub de exemplos YAML.

Evitar disparar vários builds de CI para solicitações de pull

Os modelos de compilação do YAML incluídos no Azure Pipelines foram configurados para disparar compilações para qualquer ramificação em um repositório. Isso incluía ramificações de tópico de solicitação pull. Como resultado, duas compilações foram acionadas quando solicitações pull foram criadas. Uma compilação para a ramificação de solicitação pull em resposta ao gatilho de integração contínua e uma segunda compilação para a ramificação de solicitação pull em resposta ao gatilho de solicitação pull.

Usando o trecho YAML abaixo, os modelos YAML internos serão configurados para disparar uma compilação de integração contínua apenas para a ramificação principal . Novas solicitações pull ainda serão criadas usando o gatilho de solicitação pull. Para obter mais detalhes, consulte a documentação de gatilhos de pipeline de compilação.

trigger:
- main

Alterar números de build, carregar e baixar artefatos em builds de repositório bifurcados

Até agora, as compilações de validação de solicitação pull para repositórios bifurcados não tinham permissão para carregar e baixar artefatos de compilação ou alterar o número da compilação. As permissões foram restritas porque era inseguro disponibilizar as permissões de escopo mais amplo do agente durante uma compilação de bifurcação acionada por um usuário desconhecido. Com essa atualização, as permissões do agente são definidas para que o pipeline possa executar essas operações, se necessário.

Abaixo está um exemplo do YAML que você pode usar para arquivar saídas de compilação em um arquivo tar.gz no diretório de preparo de artefato. Em seguida, ele publica a saída no Azure Pipelines para ser associada à compilação. Para obter mais detalhes, consulte a documentação sobre a tarefa Arquivar arquivos e a tarefa Publicar artefatos de compilação.

- task: ArchiveFiles@2
  inputs:
    archiveType: 'tar'
    tarCompression: 'gz'
    includeRootFolder: false
    rootFolderOrFile: '$(build.sourcesDirectory)/target'
    archiveFile: '$(build.artifactStagingDirectory)/$(build.buildId).tar.gz'
- task: PublishBuildArtifacts@1
  inputs:
    pathtoPublish: '$(build.artifactStagingDirectory)'

Nova opção na tarefa Publicar Resultados de Teste para falha em build de testes com falha

A tarefa Publicar Resultados do Teste é usada para publicar resultados de teste no Azure Pipelines quando os testes são executados usando sua escolha de executor de teste. Até agora, a tarefa simplesmente publicaria resultados de um arquivo de resultados e não falharia na compilação mesmo se o arquivo de resultados contivesse testes com falha. Isso significava que você tinha que escrever etapas personalizadas para que a compilação falhasse em falhas de teste.

Agora adicionamos uma opção na tarefa para falhar na compilação se houver algum teste com falha.

Fail the build if there are any failed tests.

Atualizações no Portal do Azure para criar um projeto de DevOps do Azure

O Portal do Azure agora inclui funcionalidade adicional para oferecer suporte a mais estruturas e serviços ao criar um projeto de DevOps do Azure. Abaixo está a lista de mudanças para cada área.

Estrutura

O Azure IoT é um serviço totalmente gerenciado que fornece inteligência de nuvem localmente em dispositivos IoT de plataforma cruzada. Agora, você pode criar um projeto de DevOps do Azure no Portal do Azure e usar a IoT Simples como a estrutura do aplicativo.

Use the Simple IoT as the application framework.

Serviço

Anteriormente, o fluxo de trabalho Criar Projeto de DevOps do Azure no Portal do Azure dava suporte apenas a Criar Novo como uma opção para o Serviço Kubernetes. Uma nova opção foi adicionada para permitir que você escolha um cluster existente como o destino de implantação para a configuração do pipeline.

Choose an existing cluster as the deployment target for the pipeline setup.

Usar o Portal do Azure para configurar e implantar em um banco de dados do CosmosDB

Atualmente, você pode usar o fluxo de trabalho do Projeto de DevOps do Azure no Portal do Azure para configurar pipelines de compilação e lançamento para um repositório Git. Agora, você pode implantar no Aplicativo Web do Azure para Contêineres (Linux) ou no Serviço de Kubernetes do Azure com um CosmosDB provisionado como um banco de dados que dá suporte aos aplicativos nesses destinos. Isso está atualmente disponível para todos os modelos .js nó e esperamos adicionar suporte para outros modelos no futuro.

Use the Azure Portal to set up and deploy to an Azure Cosmos DB database.

Compilações de instalação e pipelines de lançamento para o Functions no Portal do Azure

Agora você pode usar o fluxo de trabalho do Projeto de DevOps do Azure no Portal do Azure para configurar pipelines de compilação e lançamento para o repositório Git que implantam o Azure Functions 2.0 (Windows). Essa funcionalidade está disponível para Node.js e .NET Core.

Set up builds and release pipelines for Functions in Azure portal.

Azure Artifacts

Estatísticas de uso do pacote

Até agora, os Artefatos do Azure não forneciam uma maneira de avaliar o uso ou a popularidade dos pacotes. Com esta atualização, adicionamos uma contagem de Downloads e Usuários às páginas de detalhes do pacote e lista de pacotes. Você pode ver as estatísticas no lado direito de qualquer página.

Package usage stats.

Wiki

Fonte monoespaçada para o editor Wiki Markdown

Com a introdução de fontes monoespaçadas para o editor wiki Markdown, a legibilidade não é mais um desafio. A fonte Markdown parece limpa e fácil de ler. Esse recurso foi priorizado com base neste tíquete de sugestão.

Monospaced font for Wiki Markdown editor.

Títulos de páginas Wiki em negrito

Anteriormente, tanto o título da página Wiki quanto o Cabeçalho 1 pareciam iguais. Isso dificultou a diferenciação entre os leitores. Agora, os títulos das páginas Wiki foram feitos em negrito e distintos do Cabeçalho 1. Esse recurso foi priorizado com base neste tíquete de sugestão.

Bold Wiki page titles.

Inserir tabela de Markdown

Criar tabelas de Markdown em um wiki não é mais um desafio. Agora você pode adicionar uma tabela Markdown com um clique de um botão. Esse recurso foi priorizado com base nesse tíquete de sugestão de recurso.

Insert Markdown table.

Incorporar resultados de consulta do Azure Boards no Wiki

Agora você pode incorporar os resultados da consulta do Azure Boards em uma página wiki na forma de uma tabela. A imagem abaixo mostra uma amostra de uma página wiki com uma lista de todos os recursos liberados e todos os bugs ativos no sprint atual embutido no wiki. O conteúdo exibido na página está usando uma consulta de item de trabalho existente. Com este novo recurso você pode criar conteúdo dinâmico e não precisa se preocupar em atualizar manualmente a página wiki.

Embed Azure Boards query results in Wiki.

Os resultados da consulta podem ser adicionados em duas etapas

  1. Clique no botão "Resultados da consulta" na barra de ferramentas de edição.

Select the Query Results button from the edit toolbar.

  1. Selecione a consulta necessária e clique no botão "Inserir".

Os resultados da consulta agora podem ser exibidos na forma de uma tabela depois que você salvar a página.

View results of the query.

Isso foi priorizado com base nas seguintes sugestões de recursos:

  1. Consultas de item de trabalho no Wiki
  2. Adicionar conteúdo dinâmico do Wiki

Próximas etapas

Observação

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

Leia sobre os novos recursos abaixo e vá até o Azure DevOps para experimentá-los por si mesmo.

Como fornecer comentários

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

Make a suggestion

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

Obrigada,

Jeremy Epling