Как передать учетные данные Nexus на Azure DevOps сервер - PullRequest
0 голосов
/ 05 февраля 2020

Я строю Java проект на Azure трубопроводе. Я добавил задачу Maven для развертывания проекта. Как передать учетные данные Nexus в Maven? Я понимаю, что нам, вероятно, нужно обновить настройки. xml. Кто-нибудь может посоветовать, как этого добиться? Спасибо

1 Ответ

1 голос
/ 06 февраля 2020

Пожалуйста, попробуйте выполнить следующие шаги настройки.

(1) Добавьте раздел в ваш файл pom.xml, чтобы описать ваши репозитории Nexus.

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

Для примера:

  <repositories>
    <repository>
      <id>MyNexus</id>
      <url>http://xxxxx/nexus/content/repositories/releases</url>
    </repository>
    <repository>
      <id>MyNexus.snapshots</id>
      <url>http://xxxxx/nexus/content/repositories/snapshots</url>
      <releases>
        <enabled>false</enabled>
      </releases>
      <snapshots>
        <enabled>true</enabled>
      </snapshots>
    </repository>
  </repositories>

(2) Укажите учетные данные в settings.xml, чтобы задача Maven могла использовать ее для доступа к репозиториям Nexus.

Пример:

  <servers>
    <server>
      <id>MyNexus</id>
      <username>${MyNexusUsername}</username>
      <password>${MyNexusPassword}</password>
    </server>
  </servers>

(3) Как видите, здесь я использую переменные, которые могут принимать значения, переданные из задачи Maven. Это безопасный и безопасный способ, и вы можете настроить их как секретные переменные в конвейере сборки. Просто передайте их в определении.

enter image description here

Затем передайте эти переменные в Maven task:

enter image description here

...