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


MavenAuthenticate@0 — задача Maven Authenticate v0

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


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

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

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

Нет.

Замечания

Указывает учетные данные для веб-каналов 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 -s, чтобы указать собственный файл settings.xml. Как пройти проверку подлинности веб-каналов Артефактов Azure?

Задача Проверки подлинности 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
требования Нет
возможностей Эта задача не удовлетворяет требованиям к последующим задачам в задании.
ограничения команд Любое
переменные settable Любое
Версия агента 2.144.0 или более поздней версии
Категория задач Пакет
Требование Описание
Типы конвейеров YAML, классическая сборка, классический выпуск
Выполняется в Агент, DeploymentGroup
требования Нет
возможностей Эта задача не удовлетворяет требованиям к последующим задачам в задании.
ограничения команд Любое
переменные settable Любое
Версия агента 2.120.0 или более поздней версии
Категория задач Пакет