Поделиться через


MavenAuthenticate@0 — задача Проверки подлинности Maven версии 0

Используйте эту задачу для предоставления учетных данных для веб-каналов Azure Artifacts и внешних репозиториев Maven.

Синтаксис

# 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.

Входные данные

artifactsFeeds - Каналы
string.

Указывает разделенный запятыми список имен веб-каналов Azure Artifacts для проверки подлинности с помощью Maven. Если требуется проверка подлинности только для внешних репозиториев Maven, оставьте это поле пустым.


mavenServiceConnections - Учетные данные для репозиториев за пределами этой организации или коллекции
string.

Указывает разделенный запятыми список имен подключений службы Maven от внешних организаций для проверки подлинности с помощью Maven. Если вам нужна только проверка подлинности для веб-каналов Azure Artifacts, оставьте это поле пустым.


Параметры управления задачами

Все задачи имеют параметры управления в дополнение к входным данным задачи. Дополнительные сведения см. в разделе Параметры управления и общие свойства задачи.

Выходные переменные

Нет.

Remarks

Указывает учетные данные для веб-каналов Azure Artifacts и внешних репозиториев Maven в файле текущего settings.xml пользователя.

Где находится settings.xml файл, содержащий репозитории, прошедшие проверку подлинности?

Задача Maven Authenticate ищет settings.xml файл в домашнем каталоге текущего пользователя. Для Linux и Mac используется $HOME/.m2/settings.xmlпуть . Для Windows используется %USERPROFILE%\.m2\settings.xmlпуть . settings.xml Если файл не существует, он будет создан по указанному пути.

Мы используем параметр для указания собственного mvn -ssettings.xml файла. Как проверить подлинность веб-каналов Azure Artifacts?

Задача Проверки подлинности Maven не имеет доступа к пользовательскому settings.xml файлу, указанному -s с помощью параметра . Чтобы добавить проверку подлинности Azure Artifacts в пользовательский settings.xml, добавьте серверный элемент в файл settings.xml :

<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>

Переменную маркера доступа можно задать в конвейерах с помощью этих инструкций.

Моему конвейеру требуется доступ к веб-каналу в другом проекте

Если конвейер выполняется в проекте, отличном от проекта, в котором размещен веб-канал, необходимо настроить другой проект для предоставления доступа на чтение и запись к службе сборки. Дополнительные сведения см. в статье Разрешения пакета в Azure Pipelines .

Примеры

Проверка подлинности веб-каналов Maven в организации

В этом примере мы проверяем подлинность двух веб-каналов Azure Artifacts в нашей организации.

Определение задачи

- task: MavenAuthenticate@0
  displayName: 'Maven Authenticate'
  inputs:
    artifactsFeeds: MyFeedInOrg1,MyFeedInOrg2

Задача MavenAuthenticate обновляет файл, присутствующий settings.xml в каталоге .m2 пользователя агента, расположенном по адресу {user.home}/.m2/settings.xml , чтобы добавить две записи внутри <servers> элемента .

settings.xml

<servers>
  <server>
    <id>MyFeedInOrg1</id>
    <username>AzureDevOps</username>
    <password>****</password>
  </server>
  <server>
    <id>MyFeedInOrg2</id>
    <username>AzureDevOps</username>
    <password>****</password>
  </server>
</servers>

Чтобы правильно проверить подлинность задачи, задайте в репозиториях проекта pom.xml то же <id> имя, что и имя, указанное в задаче для Maven.

pom.xml

Веб-канал с областью проекта

 <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>

Веб-канал с областью организации

 <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>

URL-адрес веб-канала Артефактов может содержать или не содержать проект. URL-адрес веб-канала с областью проекта должен содержать проект, а URL-адрес веб-канала уровня организации не должен содержать проект. Дополнительные сведения о веб-каналах в области проекта.

Проверка подлинности веб-каналов Maven за пределами организации

В этом примере мы проверяем подлинность двух внешних репозиториев Maven.

Определение задачи

- task: MavenAuthenticate@0
  displayName: 'Maven Authenticate'
  inputs:
    MavenServiceConnections: central,MavenOrg

Задача MavenAuthenticate обновляет файл, присутствующий settings.xml в каталоге .m2 пользователя агента, расположенном по адресу {user.home}/.m2/settings.xml , чтобы добавить две записи в <servers> элемент .

settings.xml

<servers>
  <server>
    <id>central</id>
    <username>centralUsername</username>
    <password>****</password>
  </server>
  <server>
    <id>MavenOrg</id>
    <username>mavenOrgUsername</username>
    <password>****</password>
  </server>
</servers>

Чтобы правильно проверить подлинность задачи, задайте в репозиториях проекта pom.xml то же <id> имя, что и имя, указанное в задаче для 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>

Требования

Требование Описание
Типы конвейеров YAML, классическая сборка, классический выпуск
Выполняется в Агент, DeploymentGroup
Требования Нет
Capabilities Эта задача не удовлетворяет требованиям для последующих задач в задании.
Ограничения команд Любой
Устанавливаемые переменные Любой
Версия агента 2.144.0 или более поздней версии
Категория задач Пакет
Требование Описание
Типы конвейеров YAML, классическая сборка, классический выпуск
Выполняется в Агент, DeploymentGroup
Требования Нет
Capabilities Эта задача не удовлетворяет требованиям для последующих задач в задании.
Ограничения команд Любой
Устанавливаемые переменные Любой
Версия агента 2.120.0 или более поздней версии
Категория задач Пакет