Udostępnij za pośrednictwem


MavenAuthenticate@0 — zadanie uwierzytelniania narzędzia Maven w wersji 0

To zadanie służy do dostarczania poświadczeń 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

kanałów informacyjnych artifactsFeeds -
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ę połączenia usługi Maven nazwy 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 danych wejściowych zadań podrzędnych. Aby uzyskać więcej informacji, zobacz opcje kontroli i typowe właściwości zadań.

Zmienne wyjściowe

Żaden.

Uwagi

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

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

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

Użyjemy przełącznika mvn -s, aby określić własny plik settings.xml. Jak uwierzytelniamy tam źródła danych usługi Azure Artifacts?

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

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, aby udzielić dostępu do odczytu/zapisu w usłudze kompilacji. Aby uzyskać więcej informacji, zobacz Uprawnienia pakietu w usłudze Azure Pipelines.

Przykłady

Uwierzytelnianie źródeł danych Maven w organizacji

W tym przykładzie uwierzytelniamy dwa źródła danych usługi Azure Artifacts w organizacji.

Definicja zadania

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

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

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

pom.xml

Źródło danych 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 źródła danych 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 kanałach informacyjnych 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 plik settings.xml znajdujący się w katalogu .m2 użytkownika agenta znajdującym się w {user.home}/.m2/settings.xml, aby dodać dwa wpisy wewnątrz elementu <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>

Aby poprawnie uwierzytelnić zadanie, ustaw repozytoria w pom.xml projektu na taką samą <id> jak nazwa określona w zadaniu programu 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, klasyczna kompilacja, wersja klasyczna
Działa na Agent, DeploymentGroup
Wymagania Żaden
możliwości To zadanie nie spełnia żadnych wymagań dotyczących kolejnych zadań w zadaniu.
ograniczenia poleceń Jakikolwiek
zmienne ustawiane Jakikolwiek
Wersja agenta 2.144.0 lub nowsza
Kategoria zadań Pakiet
Wymaganie Opis
Typy potoków YAML, klasyczna kompilacja, wersja klasyczna
Działa na Agent, DeploymentGroup
Wymagania Żaden
możliwości To zadanie nie spełnia żadnych wymagań dotyczących kolejnych zadań w zadaniu.
ograniczenia poleceń Jakikolwiek
zmienne ustawiane Jakikolwiek
Wersja agenta 2.120.0 lub nowsza
Kategoria zadań Pakiet