MavenAuthenticate@0 – Tarefa Maven Authenticate v0
Use esta tarefa para fornecer credenciais para feeds do Azure Artifacts e repositórios externos do Maven.
Sintaxe
# Maven Authenticate v0
# Provides credentials for Azure Artifacts feeds and external maven repositories.
- task: MavenAuthenticate@0
inputs:
#artifactsFeeds: # string. Feeds.
#mavenServiceConnections: # string. Credentials for repositories outside this organization/collection.
Entradas
artifactsFeeds
-
Feeds
string
.
Especifica uma lista separada por vírgulas de nomes de feed do Azure Artifacts para autenticar com o Maven. Se você precisar apenas de autenticação para repositórios Externos do Maven, deixe esse campo em branco.
mavenServiceConnections
-
Credenciais para repositórios fora desta organização/coleção
string
.
Especifica uma lista separada por vírgulas de nomes de conexão de serviço maven de organizações externas para autenticar com o Maven. Se você precisar apenas de autenticação para feeds do Azure Artifacts, deixe esse campo em branco.
Opções de controle de tarefa
Todas as tarefas têm opções de controle além de suas entradas de tarefa. Para obter mais informações, consulte Opções de controle e propriedades comuns da tarefa.
Variáveis de saída
Nenhum.
Comentários
Especifica as credenciais para feeds do Azure Artifacts e repositórios Maven externos no arquivo do settings.xml
usuário atual.
-
Onde está localizado o
settings.xml
arquivo que contém os repositórios autenticados? - Usamos a opção
mvn -s
para especificar nosso própriosettings.xml
arquivo. Como autenticar feeds do Azure Artifacts lá? - Meu Pipeline precisa acessar um feed em um projeto diferente
Onde está localizado o settings.xml
arquivo que contém os repositórios autenticados?
A tarefa Maven Authenticate pesquisa o settings.xml
arquivo no diretório base do usuário atual. Para Linux e Mac, o caminho é $HOME/.m2/settings.xml
. Para o Windows, o caminho é %USERPROFILE%\.m2\settings.xml
. Se o settings.xml
arquivo não existir, um novo será criado nesse caminho.
Usamos a opção mvn -s
para especificar nosso próprio settings.xml
arquivo. Como autenticar feeds do Azure Artifacts lá?
A tarefa Maven Authenticate não tem acesso ao arquivo personalizado settings.xml
especificado usando um -s
comutador. Para adicionar a autenticação do Azure Artifacts ao seu personalizado settings.xml
, adicione um elemento de servidor dentro do settings.xml
arquivo:
<server>
<id>feedName</id> <!-- Set this to the id of the <repository> element inside your pom.xml file. -->
<username>AzureDevOps</username>
<password>${env.SYSTEM_ACCESSTOKEN}</password>
</server>
A variável de token de acesso pode ser definida em seus pipelines usando essas instruções.
Meu Pipeline precisa acessar um feed em um projeto diferente
Se o pipeline estiver em execução em um projeto diferente do projeto que hospeda o feed, você deverá configurar o outro projeto para conceder acesso de leitura/gravação ao serviço de build. Confira Permissões de pacote no Azure Pipelines para obter mais detalhes.
Exemplos
- Autenticar feeds do Maven dentro de sua organização
- Autenticar feeds do Maven fora da sua organização
Autenticar feeds do Maven dentro de sua organização
Neste exemplo, autenticamos dois feeds do Azure Artifacts em nossa organização.
Definição de tarefa
- task: MavenAuthenticate@0
displayName: 'Maven Authenticate'
inputs:
artifactsFeeds: MyFeedInOrg1,MyFeedInOrg2
A MavenAuthenticate
tarefa atualiza o settings.xml
arquivo presente no diretório .m2 do usuário do agente localizado em {user.home}/.m2/settings.xml
para adicionar duas entradas dentro do <servers>
elemento .
settings.xml
<servers>
<server>
<id>MyFeedInOrg1</id>
<username>AzureDevOps</username>
<password>****</password>
</server>
<server>
<id>MyFeedInOrg2</id>
<username>AzureDevOps</username>
<password>****</password>
</server>
</servers>
Para autenticar corretamente a tarefa, defina os repositórios no do pom.xml
projeto como o mesmo <id>
que o nome especificado na tarefa para Maven.
pom.xml
Feed com escopo do projeto
<repository>
<id>MyFeedInOrg1</id>
<url>https://pkgs.dev.azure.com/OrganizationName/ProjectName/_packaging/MyProjectScopedFeed1/Maven/v1</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
Feed com escopo da organização
<repository>
<id>MyFeedInOrg1</id>
<url>https://pkgs.dev.azure.com/OrganizationName/_packaging/MyOrgScopedFeed1/Maven/v1</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
A URL do feed artifacts pode ou não conter o projeto. Uma URL para um feed no escopo do projeto deve conter o projeto e uma URL para um feed no escopo da organização não deve conter o projeto. Saiba mais sobre feeds no escopo do projeto.
Autenticar feeds do Maven fora da sua organização
Neste exemplo, autenticamos dois repositórios Externos do Maven.
Definição de tarefa
- task: MavenAuthenticate@0
displayName: 'Maven Authenticate'
inputs:
MavenServiceConnections: central,MavenOrg
A MavenAuthenticate
tarefa atualiza o settings.xml
arquivo presente no diretório .m2 dos usuários do agente localizado em {user.home}/.m2/settings.xml
para adicionar duas entradas dentro do <servers>
elemento .
settings.xml
<servers>
<server>
<id>central</id>
<username>centralUsername</username>
<password>****</password>
</server>
<server>
<id>MavenOrg</id>
<username>mavenOrgUsername</username>
<password>****</password>
</server>
</servers>
Para autenticar corretamente a tarefa, defina os repositórios no do pom.xml
projeto como o mesmo <id>
que o nome especificado na tarefa para Maven.
pom.xml
<repository>
<id>central</id>
<url>https://repo1.maven.org/maven2/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
Requisitos
Requisito | Descrição |
---|---|
Tipos de pipeline | YAML, build clássico, versão clássica |
É executado em | Agent, DeploymentGroup |
Demandas | Nenhum |
Funcionalidades | Essa tarefa não atende a nenhuma demanda por tarefas subsequentes no trabalho. |
Restrições de comando | Qualquer |
Variáveis configuráveis | Qualquer |
Versão do agente | 2.144.0 ou superior |
Categoria da tarefa | Pacote |
Requisito | Descrição |
---|---|
Tipos de pipeline | YAML, build clássico, versão clássica |
É executado em | Agent, DeploymentGroup |
Demandas | Nenhum |
Funcionalidades | Essa tarefa não atende a nenhuma demanda por tarefas subsequentes no trabalho. |
Restrições de comando | Qualquer |
Variáveis configuráveis | Qualquer |
Versão do agente | 2.120.0 ou superior |
Categoria da tarefa | Pacote |