MavenAuthenticate@0 — zadanie uwierzytelniania programu Maven w wersji 0

Użyj tego zadania, aby podać poświadczenia dla źródeł danych usługi Azure Artifacts i zewnętrznych repozytoriów Maven.

Składnia

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

Dane wejściowe

artifactsFeeds - Kanały
string.

Określa rozdzielaną przecinkami listę nazw źródeł danych usługi Azure Artifacts do uwierzytelniania za pomocą narzędzia Maven. Jeśli potrzebujesz tylko uwierzytelniania dla zewnętrznych repozytoriów Maven, pozostaw to pole puste.


mavenServiceConnections - Poświadczenia dla repozytoriów spoza tej organizacji/kolekcji
string.

Określa rozdzielaną przecinkami listę nazw połączeń usługi Maven z organizacji zewnętrznych do uwierzytelniania za pomocą narzędzia Maven. Jeśli potrzebujesz tylko uwierzytelniania dla źródeł danych usługi Azure Artifacts, pozostaw to pole puste.


Opcje sterowania zadaniami

Wszystkie zadania mają opcje sterowania oprócz ich danych wejściowych zadań. Aby uzyskać więcej informacji, zobacz Opcje sterowania i typowe właściwości zadań.

Zmienne wyjściowe

Brak.

Uwagi

Określa poświadczenia źródeł danych usługi Azure Artifacts i zewnętrznych repozytoriów Maven w pliku bieżącego użytkownika settings.xml .

Gdzie znajduje settings.xml się plik zawierający uwierzytelnione repozytoria?

Zadanie uwierzytelniania maven wyszukuje settings.xml plik w katalogu głównym bieżącego użytkownika. W przypadku systemów Linux i Mac ścieżka to $HOME/.m2/settings.xml. W przypadku systemu Windows ścieżka to %USERPROFILE%\.m2\settings.xml. settings.xml Jeśli plik nie istnieje, zostanie utworzony nowy w tej ścieżce.

Użyjemy przełącznika, mvn -s aby określić własny settings.xml plik. Jak uwierzytelniamy tam kanały informacyjne usługi Azure Artifacts?

Zadanie uwierzytelniania maven nie ma dostępu do pliku niestandardowego settings.xml określonego za pomocą przełącznika -s . Aby dodać uwierzytelnianie usługi Azure Artifacts do niestandardowego settings.xmlelementu , dodaj element serwera w settings.xml pliku:

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

Zmienną tokenu dostępu można ustawić w potokach, korzystając z tych instrukcji.

Mój potok musi uzyskać dostęp do kanału informacyjnego w innym projekcie

Jeśli potok jest uruchomiony w innym projekcie niż projekt hostowania kanału informacyjnego, należy skonfigurować drugi projekt w celu udzielenia dostępu do odczytu/zapisu do usługi kompilacji. Aby uzyskać więcej informacji, zobacz Uprawnienia pakietu w usłudze Azure Pipelines .

Przykłady

Uwierzytelnianie kanałów informacyjnych narzędzia Maven w organizacji

W tym przykładzie uwierzytelniamy dwa kanały informacyjne usługi Azure Artifacts w organizacji.

Definicja zadania

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

Zadanie MavenAuthenticate aktualizuje settings.xml plik znajdujący się w katalogu .m2 użytkownika agenta, {user.home}/.m2/settings.xml w celu dodania dwóch wpisów wewnątrz <servers> elementu.

settings.xml

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

Aby poprawnie uwierzytelnić zadanie, ustaw repozytoria w projekcie pom.xml na taką samą <id> jak nazwa określona w zadaniu narzędzia Maven.

pom.xml

Kanał informacyjny o zakresie projektu

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

Kanał informacyjny o zakresie organizacji

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

Adres URL kanału informacyjnego artefaktów może lub nie może zawierać projektu. Adres URL kanału informacyjnego o zakresie projektu musi zawierać projekt, a adres URL kanału informacyjnego o zakresie organizacji nie może zawierać projektu. Dowiedz się więcej o źródłach danych o zakresie projektu.

Uwierzytelnianie źródeł danych Maven poza organizacją

W tym przykładzie uwierzytelniamy dwa zewnętrzne repozytoria Maven.

Definicja zadania

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

Zadanie MavenAuthenticate aktualizuje settings.xml plik znajdujący się w katalogu .m2 użytkownika agenta znajdującym się w lokalizacji , {user.home}/.m2/settings.xml aby dodać dwa wpisy wewnątrz <servers> elementu.

settings.xml

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

Aby poprawnie uwierzytelnić zadanie, ustaw repozytoria w projekcie pom.xml na taką samą <id> jak nazwa określona w zadaniu narzędzia 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>

Wymagania

Wymaganie Opis
Typy potoków YAML, kompilacja klasyczna, wersja klasyczna
Działa na Agent, DeploymentGroup
Wymagania Brak
Możliwości To zadanie nie spełnia żadnych wymagań dotyczących kolejnych zadań w zadaniu.
Ograniczenia poleceń Dowolne
Zmienne w formie tabeli settable Dowolne
Wersja agenta 2.144.0 lub nowsza
Kategoria zadania Pakiet
Wymaganie Opis
Typy potoków YAML, kompilacja klasyczna, wersja klasyczna
Działa na Agent, DeploymentGroup
Wymagania Brak
Możliwości To zadanie nie spełnia żadnych wymagań dotyczących kolejnych zadań w zadaniu.
Ograniczenia poleceń Dowolne
Zmienne w formie tabeli settable Dowolne
Wersja agenta 2.120.0 lub nowsza
Kategoria zadania Pakiet