Delen via


MavenAuthenticate@0 - Maven-taak verifiëren v0

Gebruik deze taak om referenties op te geven voor Azure Artifacts-feeds en externe Maven-opslagplaatsen.

Syntaxis

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

Invoer

artifactsFeeds - feeds
string.

Hiermee geeft u een door komma's gescheiden lijst met azure Artifacts-feednamen op die moeten worden geverifieerd met Maven. Als u alleen verificatie nodig hebt voor externe Maven-opslagplaatsen, laat u dit veld leeg.


mavenServiceConnections - referenties voor opslagplaatsen buiten deze organisatie/verzameling
string.

Hiermee geeft u een door komma's gescheiden lijst met Maven-serviceverbinding namen van externe organisaties voor verificatie met Maven. Als u alleen verificatie voor Azure Artifacts-feeds nodig hebt, laat u dit veld leeg.


Opties voor taakbeheer

Alle taken hebben besturingsopties naast hun taakinvoer. Zie Opties en algemene taakeigenschappenvoor meer informatie.

Uitvoervariabelen

Geen.

Opmerkingen

Hiermee geeft u de referenties op voor Azure Artifacts-feeds en externe Maven-opslagplaatsen in het settings.xml-bestand van de huidige gebruiker.

Waar bevindt het settings.xml-bestand zich met de geverifieerde opslagplaatsen?

De Maven-verificatietaak zoekt naar het settings.xml-bestand in de basismap van de huidige gebruiker. Voor Linux en Mac is het pad $HOME/.m2/settings.xml. Voor Windows is het pad %USERPROFILE%\.m2\settings.xml. Als het settings.xml-bestand niet bestaat, wordt er een nieuw bestand gemaakt op dat pad.

We gebruiken de mvn -s-switch om ons eigen settings.xml-bestand op te geven. Hoe verifiëren we Azure Artifacts-feeds daar?

De Maven-verificatietaak heeft geen toegang tot het aangepaste settings.xml-bestand dat is opgegeven met behulp van een -s-switch. Als u Verificatie van Azure Artifacts wilt toevoegen aan uw aangepaste settings.xml, voegt u een serverelement toe in uw settings.xml-bestand:

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

De toegangstokenvariabele kan worden ingesteld in uw pijplijnen met behulp van deze instructies.

Mijn pijplijn moet toegang krijgen tot een feed in een ander project

Als de pijplijn wordt uitgevoerd in een ander project dan het project dat als host fungeert voor de feed, moet u het andere project instellen om lees-/schrijftoegang te verlenen aan de buildservice. Zie Pakketmachtigingen in Azure Pipelines voor meer informatie.

Voorbeelden

Maven-feeds verifiëren binnen uw organisatie

In dit voorbeeld verifiëren we twee Azure Artifacts-feeds binnen onze organisatie.

Taakdefinitie

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

De MavenAuthenticate taak werkt het settings.xml bestand bij dat aanwezig is in de map .m2 van de agentgebruiker in {user.home}/.m2/settings.xml om twee vermeldingen toe te voegen in het <servers> element.

settings.xml

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

Als u de taak correct wilt verifiëren, stelt u de opslagplaatsen in de pom.xml van uw project in op dezelfde <id> als de naam die is opgegeven in de taak voor Maven.

pom.xml

Projectbereikfeed

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

Binnen het bereik van de organisatiefeed

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

De URL van de artefactenfeed mag het project wel of niet bevatten. Een URL voor een projectgerichte feed moet het project bevatten en een URL voor een feed binnen het organisatiebereik mag het project niet bevatten. Meer informatie over projectfeeds.

Maven-feeds verifiëren buiten uw organisatie

In dit voorbeeld verifiëren we twee externe Maven-opslagplaatsen.

Taakdefinitie

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

De MavenAuthenticate taak werkt het settings.xml bestand bij dat aanwezig is in de map .m2 van de agentgebruikers in {user.home}/.m2/settings.xml om twee vermeldingen toe te voegen in het <servers> element.

settings.xml

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

Als u de taak correct wilt verifiëren, stelt u de opslagplaatsen in de pom.xml van uw project in op dezelfde <id> als de naam die is opgegeven in de taak voor 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>

Vereisten

Voorwaarde Beschrijving
Pijplijntypen YAML, klassieke build, klassieke release
Wordt uitgevoerd op Agent, DeploymentGroup
eisen Geen
mogelijkheden Deze taak voldoet niet aan de vereisten voor volgende taken in de taak.
opdrachtbeperkingen Welk dan ook
variabelen instellen Welk dan ook
Agentversie 2.144.0 of hoger
Taakcategorie Pakket
Voorwaarde Beschrijving
Pijplijntypen YAML, klassieke build, klassieke release
Wordt uitgevoerd op Agent, DeploymentGroup
eisen Geen
mogelijkheden Deze taak voldoet niet aan de vereisten voor volgende taken in de taak.
opdrachtbeperkingen Welk dan ook
variabelen instellen Welk dan ook
Agentversie 2.120.0 of hoger
Taakcategorie Pakket