Paket: Maven Kimlik Doğrulaması

Geçerli kullanıcının Azure Artifacts akışlar ve dış Maven depoları için kimlik settings.xml sağlar.

YAML kod parçacığı

# Provides credentials for Azure Artifacts feeds and external Maven repositories.
- task: MavenAuthenticate@0
  #inputs:
    #artifactsFeeds: MyFeedInOrg1, MyFeedInOrg2 # Optional
    #mavenServiceConnections: serviceConnection1, serviceConnection2 # Optional

Bağımsız değişkenler

Bağımsız Değişken Description
artifactsFeeds
Akışlarım (aşağıdan seçin)
(İsteğe bağlı) Maven ile kimlik doğrulaması yapmak Azure Artifacts akış adlarının virgülle ayrılmış listesi. Yalnızca dış Maven depoları için kimlik doğrulamasına ihtiyacınız varsa bu alanı boş bırakın.
mavenServiceConnections
Dış kuruluşlardan akışlar
(İsteğe bağlı) Maven ile kimlik doğrulaması yapmak için dış kuruluşlardan gelen Maven hizmet bağlantı adlarının virgülle ayrılmış listesi. Yalnızca akışlar için kimlik doğrulamasına Azure Artifacts bu alanı boş bırakın.

Örnekler

Maven akışlarının kuruluş içinde kimliğini doğrulama

Bu örnekte, kuruluş içinde iki Azure Artifacts akışın kimliğini doğrularız.

Görev tanımı

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

MavenAuthenticate görevi, settings.xml öğesinin içine iki giriş eklemek için aracı kullanıcıya ait .m2 dizininde bulunan {user.home}/.m2/settings.xml dosyanın yeni bir dosyasını <servers> günceller.

settings.xml

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

Maven'in görevin kimliğini doğru bir şekilde doğru şekilde doğrulaması için projenizin depolarını, görevde belirtilen adla aynı pom.xml <id> olacak şekilde ayarlanız gerekir.

pom.xml

Proje kapsamlı akış

 <repository>
   <id>MyFeedInOrg1</id>
   <url>https://pkgs.dev.azure.com/OrganzationName/ProjectName/_packaging/MyProjectScopedFeed1/Maven/v1</url>
   <releases>
     <enabled>true</enabled>
   </releases>
   <snapshots>
     <enabled>true</enabled>
   </snapshots>
 </repository>

Kuruluş kapsamlı akışı

 <repository>
   <id>MyFeedInOrg1</id>
   <url>https://pkgs.dev.azure.com/OrganzationName/_packaging/MyOrgScopedFeed1/Maven/v1</url>
   <releases>
     <enabled>true</enabled>
   </releases>
   <snapshots>
     <enabled>true</enabled>
   </snapshots>
 </repository>

Yapıt akışı URL'si projeyi içerebilir veya içermez. Bir proje kapsamlı akışın URL'si projeyi içermeli ve bir kuruluş kapsamlı akışı url'si projeyi içermeli. Daha fazla bilgi edinin.

Maven akışlarının kimliğini kuruluş dışından doğrulama.

Bu örnekte, iki dış Maven deposunun kimliğini doğrularız.

Görev tanımı

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

MavenAuthenticate görevi, settings.xml içinde iki giriş eklemek için aracı kullanıcılarının .m2 dizininde bulunan dosyanın yenilerini {user.home}/.m2/settings.xml <servers> ler.

settings.xml

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

Maven'in görevin kimliğini doğru bir şekilde doğru şekilde doğrulaması için projenizin depolarını, görevde belirtilen adla aynı pom.xml <id> olacak şekilde ayarlanız gerekir.

pom.xml

<repository>
  <id>central</id>
  <url>https://repo1.maven.org/maven2/</url>
  <releases>
    <enabled>true</enabled>
  </releases>
  <snapshots>
    <enabled>true</enabled>
  </snapshots>
</repository>

Açık kaynak

Bu görev GitHub'da açık kaynaktır. Geri bildirim ve katkılar açıktır.

SSS

Kimliği settings.xml doğrulanmış depoları içeren dosya nerede bulunur?

Maven Kimlik Doğrulaması görevi, settings.xml kullanıcının giriş dizininde kimlik doğrulamasını arar. Linux ve Mac için yol , $HOME/.m2/settings.xml Windows için ise %USERPROFILE%\.m2\settings.xml yoludur. settings.xml dosyası yoksa bu yolda yeni bir dosya oluşturulur.

Kendi mvn -s dosyamızı belirtmek için anahtarını kullanıyoruz, settings.xml orada akışlar için Azure Artifacts kimlik doğrulaması yapabiliriz?

Maven Kimlik Doğrulaması görevi, bir anahtar kullanılarak settings.xml özel kimlik doğrulaması dosyasına erişim -s iznine sahip değildir. Özel dosyanıza Azure Artifacts kimlik doğrulaması eklemek settings.xml dosyanıza bir sunucu öğesi settings.xml ekleyin:

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

Erişim belirteci değişkeni, bu yönergeler kullanılarak işlem hatlarınıza ayarlanabilir.

İşlem Hattım'ın farklı bir projede yer alan akışa erişmesi gerekiyor

İşlem hattı, akışı barındıran projeden farklı bir projede çalışıyorsa, derleme hizmetine okuma/yazma erişimi sağlamak için diğer projeyi ayarlamanız gerekir. Daha fazla bilgi için bkz. Azure Pipelines paket izinleri .