Partilhar via


Publicar artefatos do Maven com o Azure Pipelines (YAML/Classic)

Serviços de DevOps do Azure | Azure DevOps Server 2022 | Azure DevOps Server 2020

O Azure Pipelines permite que os desenvolvedores publiquem artefatos Maven em feeds de Artefatos do Azure dentro da mesma organização, em outras organizações e em registros públicos, como o Maven Central. Este artigo orienta-o na publicação dos seus artefactos Maven utilizando pipelines YAML e Classic.

Pré-requisitos

Produto Requisitos
Azure DevOps - Uma organização de DevOps do Azure e um projeto.
- Um feed de Artefatos do Azure .
- Um pipeline em funcionamento.
- Permissões:
    - Para conceder acesso a todos os pipelines no projeto, você deve ser membro do grupo Administradores de Projeto.
    - Para criar conexões de serviço, você deve ter a função Administrador ou Criador para conexões de serviço .

Publicar pacotes num feed da mesma organização

  1. Entre em sua organização do Azure DevOps e navegue até seu projeto.
  1. Entre em sua coleção de DevOps do Azure e navegue até seu projeto.
  1. Selecione Pipelines e, em seguida, selecione sua definição de pipeline.
  1. Selecione Editar e adicione o seguinte trecho ao pipeline do YAML:

    steps:
    - task: MavenAuthenticate@0
      displayName: 'Authenticate to Azure Artifacts feed'
      inputs:
        artifactsFeeds: 'MavenDemo,MavenDemoFeed2'        ## Select one or multiple feeds to authenticate with.
    - script: |
       mvn deploy
      displayName: 'Publish'
    

Observação

Para publicar pacotes em um feed usando o Azure Pipelines, certifique-se de que o Serviço de Criação de Coleção de Projetos e as identidades do Serviço de Criação do seu projeto recebam a função de Editor de Feed (Colaborador) em suas configurações de feed. Consulte Gerenciar permissões para obter mais detalhes.

Publicar pacotes em um feed em uma organização diferente

Para publicar pacotes em um feed em uma organização de DevOps do Azure diferente, você deve primeiro criar um token de acesso pessoal (PAT) na organização de destino e, em seguida, usar essa PAT para criar uma conexão de serviço e autenticar com o feed de destino.

Criar um token de acesso pessoal

  1. Navegue até a organização que hospeda o feed de destino.

  2. Crie um token de acesso pessoal com escopo de Empacotamento>ler e escrever.

  3. Copie seu token de acesso pessoal, pois você precisará dele na seção a seguir.

Criar uma conexão de serviço

  1. Entre na organização do Azure DevOps onde seu pipeline será executado e navegue até seu projeto.

  2. Navegue até às Configurações do Projeto>Conexões de Serviço.

  3. Selecione Nova conexão de serviço, selecione Maven e, em seguida, selecione Avançar.

  4. Em Método de autenticação, selecione Nome de usuário e Senha. Insira o URL do repositório e o ID do repositório.

  5. No campo Nome de usuário , insira qualquer valor de cadeia de caracteres (isso é necessário, mas o Azure Pipelines usará sua pom.xml configuração e o token de acesso pessoal criado anteriormente para autenticação).

    • Em Senha, cole o token de acesso pessoal criado anteriormente.
    • Forneça um Nome para sua conexão de serviço.
    • Assinale a caixa de seleção Conceder permissão de acesso a todos os pipelines.
  6. Quando terminar, selecione Guardar.

Publicar pacotes

  1. Entre em sua organização do Azure DevOps e navegue até seu projeto.

  2. Selecione Pipelines e, em seguida, selecione sua definição de pipeline.

  3. Selecione Editar e adicione o seguinte trecho ao pipeline do YAML:

    steps:
    - task: MavenAuthenticate@0
      displayName: 'Authenticate to Azure Artifacts feed'
      inputs:
        MavenServiceConnections: <NAME_OF_YOUR_SERVICE_CONNECTION> 
    
    - script: |
       mvn deploy
      displayName: 'Publish'