MavenAuthenticate@0: tarea Autenticación de Maven v0
Use esta tarea para proporcionar credenciales para fuentes de Azure Artifacts y repositorios externos de Maven.
Sintaxis
# 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
-
Alimenta
string
.
Especifica una lista separada por comas de nombres de fuente de Azure Artifacts para autenticarse con Maven. Si solo necesita autenticación para repositorios externos de Maven, deje este campo en blanco.
mavenServiceConnections
-
Credenciales para repositorios fuera de esta organización o colección
string
.
Especifica una lista separada por comas de nombres de conexión de servicio de Maven de organizaciones externas para autenticarse con Maven. Si solo necesita autenticación para las fuentes de Azure Artifacts, deje este campo en blanco.
Opciones de control de tareas
Todas las tareas tienen opciones de control además de sus entradas de tareas. Para obtener más información, vea Opciones de control y propiedades de tareas comunes.
Variables de salida
Ninguno.
Observaciones
Especifica las credenciales de las fuentes de Azure Artifacts y los repositorios externos de Maven en el archivo del settings.xml
usuario actual.
-
¿Dónde se encuentra el
settings.xml
archivo que contiene los repositorios autenticados? - Usamos el
mvn -s
modificador para especificar nuestro propiosettings.xml
archivo. ¿Cómo autenticamos las fuentes de Azure Artifacts allí? - Mi canalización necesita acceder a una fuente en un proyecto diferente
¿Dónde se encuentra el settings.xml
archivo que contiene los repositorios autenticados?
La tarea Autenticación de Maven busca el settings.xml
archivo en el directorio principal del usuario actual. Para Linux y Mac, la ruta de acceso es $HOME/.m2/settings.xml
. Para Windows, la ruta de acceso es %USERPROFILE%\.m2\settings.xml
. Si el settings.xml
archivo no existe, se creará uno nuevo en esa ruta de acceso.
Usamos el mvn -s
modificador para especificar nuestro propio settings.xml
archivo. ¿Cómo autenticamos las fuentes de Azure Artifacts allí?
La tarea Autenticación de Maven no tiene acceso al archivo personalizado settings.xml
especificado mediante un -s
modificador . Para agregar la autenticación de Azure Artifacts a su personalizado settings.xml
, agregue un elemento de servidor dentro del settings.xml
archivo:
<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>
La variable de token de acceso se puede establecer en las canalizaciones mediante estas instrucciones.
Mi canalización necesita acceder a una fuente en un proyecto diferente
Si la canalización se ejecuta en un proyecto diferente al que hospeda la fuente, debe configurar el otro proyecto para conceder acceso de lectura y escritura al servicio de compilación. Para más información , consulte Permisos de paquete en Azure Pipelines .
Ejemplos
- Autenticación de fuentes de Maven dentro de su organización
- Autenticación de fuentes de Maven fuera de la organización
Autenticación de fuentes de Maven dentro de su organización
En este ejemplo, autenticamos dos fuentes de Azure Artifacts dentro de nuestra organización.
Definición de tarea
- task: MavenAuthenticate@0
displayName: 'Maven Authenticate'
inputs:
artifactsFeeds: MyFeedInOrg1,MyFeedInOrg2
La MavenAuthenticate
tarea actualiza el settings.xml
archivo presente en el directorio .m2 del usuario del agente ubicado en {user.home}/.m2/settings.xml
para agregar dos entradas dentro del <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 correctamente la tarea, establezca los repositorios del proyecto pom.xml
en el mismo <id>
nombre que el especificado en la tarea para Maven.
pom.xml
Fuente con ámbito de proyecto
<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>
Fuente con ámbito de organización
<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>
La dirección URL de la fuente artefactos puede contener o no el proyecto. Una dirección URL de una fuente con ámbito de proyecto debe contener el proyecto y una dirección URL de una fuente con ámbito de organización no debe contener el proyecto. Obtenga más información sobre las fuentes con ámbito de proyecto.
Autenticación de fuentes de Maven fuera de la organización
En este ejemplo, autenticamos dos repositorios externos de Maven.
Definición de tarea
- task: MavenAuthenticate@0
displayName: 'Maven Authenticate'
inputs:
MavenServiceConnections: central,MavenOrg
La MavenAuthenticate
tarea actualiza el settings.xml
archivo presente en el directorio .m2 de los usuarios del agente ubicado en {user.home}/.m2/settings.xml
para agregar dos entradas dentro del <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 correctamente la tarea, establezca los repositorios del proyecto pom.xml
en el mismo <id>
nombre que el especificado en la tarea 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 | Descripción |
---|---|
Tipos de canalización | YAML, compilación clásica, versión clásica |
Se ejecuta en | Agente, DeploymentGroup |
Peticiones | None |
Capabilities | Esta tarea no satisface ninguna demanda de tareas posteriores en el trabajo. |
Restricciones de comandos | Any |
Variables que se pueden establecer | Any |
Versión del agente | 2.144.0 o superior |
Categoría de la tarea: | Paquete |
Requisito | Descripción |
---|---|
Tipos de canalización | YAML, compilación clásica, versión clásica |
Se ejecuta en | Agente, DeploymentGroup |
Peticiones | None |
Capabilities | Esta tarea no satisface ninguna demanda de tareas posteriores en el trabajo. |
Restricciones de comandos | Any |
Variables que se pueden establecer | Any |
Versión del agente | 2.120.0 o superior |
Categoría de la tarea: | Paquete |