MavenAuthenticate@0 - Tugas Maven Mengautentikasi v0
Gunakan tugas ini untuk menyediakan kredensial untuk umpan Azure Artifacts dan repositori Maven eksternal.
Sintaks
# 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.
Input
artifactsFeeds
-
Feed
string
.
Menentukan daftar nama umpan Azure Artifacts yang dipisahkan koma untuk diautentikasi dengan Maven. Jika Anda hanya memerlukan autentikasi untuk repositori Maven eksternal, biarkan bidang ini kosong.
mavenServiceConnections
-
Kredensial untuk repositori di luar organisasi/koleksi ini
string
.
Menentukan daftar nama koneksi layanan Maven yang dipisahkan koma dari organisasi eksternal untuk diautentikasi dengan Maven. Jika Anda hanya memerlukan autentikasi untuk umpan Azure Artifacts, biarkan bidang ini kosong.
Opsi kontrol tugas
Semua tugas memiliki opsi kontrol selain input tugas mereka. Untuk informasi selengkapnya, lihat Opsi kontrol dan properti tugas umum.
Variabel output
Tidak ada.
Keterangan
Menentukan kredensial untuk umpan Azure Artifacts dan repositori Maven eksternal dalam file pengguna settings.xml
saat ini.
-
settings.xml
Di mana file yang berisi repositori terautentikasi berada? - Kami menggunakan switch
mvn -s
untuk menentukan file kami sendirisettings.xml
. Bagaimana cara mengautentikasi umpan Azure Artifacts di sana? - Alur Saya perlu mengakses umpan dalam proyek yang berbeda
settings.xml
Di mana file yang berisi repositori terautentikasi berada?
Tugas Autentikasi Maven mencari settings.xml
file di direktori asal pengguna saat ini. Untuk Linux dan Mac, jalurnya adalah $HOME/.m2/settings.xml
. Untuk Windows, jalurnya adalah %USERPROFILE%\.m2\settings.xml
. Jika file tidak ada, file baru akan dibuat di jalur tersebut settings.xml
.
Kami menggunakan switch mvn -s
untuk menentukan file kami sendiri settings.xml
. Bagaimana cara mengautentikasi umpan Azure Artifacts di sana?
Tugas Autentikasi Maven tidak memiliki akses ke file kustom settings.xml
yang ditentukan dengan menggunakan sakelar -s
. Untuk menambahkan autentikasi Azure Artifacts ke kustom settings.xml
Anda, tambahkan elemen server di dalam file Anda 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>
Variabel token akses dapat diatur dalam alur Anda menggunakan instruksi ini.
Alur Saya perlu mengakses umpan dalam proyek yang berbeda
Jika alur berjalan dalam proyek yang berbeda dari proyek yang menghosting umpan, Anda harus menyiapkan proyek lain untuk memberikan akses baca/tulis ke layanan build. Lihat Izin paket di Azure Pipelines untuk detail selengkapnya.
Contoh
- Mengautentikasi umpan Maven di dalam organisasi Anda
- Mengautentikasi umpan Maven di luar organisasi Anda
Mengautentikasi umpan Maven di dalam organisasi Anda
Dalam contoh ini, kami mengautentikasi dua umpan Azure Artifacts dalam organisasi kami.
Definisi tugas
- task: MavenAuthenticate@0
displayName: 'Maven Authenticate'
inputs:
artifactsFeeds: MyFeedInOrg1,MyFeedInOrg2
Tugas memperbarui MavenAuthenticate
file yang settings.xml
ada di direktori .m2 pengguna agen yang terletak di {user.home}/.m2/settings.xml
untuk menambahkan dua entri di dalam <servers>
elemen .
settings.xml
<servers>
<server>
<id>MyFeedInOrg1</id>
<username>AzureDevOps</username>
<password>****</password>
</server>
<server>
<id>MyFeedInOrg2</id>
<username>AzureDevOps</username>
<password>****</password>
</server>
</servers>
Untuk mengautentikasi tugas dengan benar, atur repositori di proyek pom.xml
Anda ke sama <id>
dengan nama yang ditentukan dalam tugas untuk Maven.
pom.xml
Umpan lingkup proyek
<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>
Umpan terlingkup organisasi
<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>
URL umpan Artefak mungkin atau mungkin tidak berisi proyek. URL untuk umpan cakupan proyek harus berisi proyek, dan URL untuk umpan yang dilingkup organisasi tidak boleh berisi proyek. Pelajari selengkapnya tentang umpan cakupan proyek.
Mengautentikasi umpan Maven di luar organisasi Anda
Dalam contoh ini, kami mengautentikasi dua repositori Maven eksternal.
Definisi tugas
- task: MavenAuthenticate@0
displayName: 'Maven Authenticate'
inputs:
MavenServiceConnections: central,MavenOrg
Tugas MavenAuthenticate
memperbarui file yang settings.xml
ada di direktori .m2 pengguna agen yang terletak di {user.home}/.m2/settings.xml
untuk menambahkan dua entri di dalam <servers>
elemen .
settings.xml
<servers>
<server>
<id>central</id>
<username>centralUsername</username>
<password>****</password>
</server>
<server>
<id>MavenOrg</id>
<username>mavenOrgUsername</username>
<password>****</password>
</server>
</servers>
Untuk mengautentikasi tugas dengan benar, atur repositori di proyek pom.xml
Anda ke sama <id>
dengan nama yang ditentukan dalam tugas untuk 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>
Persyaratan
Persyaratan | Deskripsi |
---|---|
Jenis alur | YAML, Build klasik, Rilis klasik |
Berjalan pada | Agen, DeploymentGroup |
Permintaan | Tidak ada |
Kemampuan | Tugas ini tidak memenuhi tuntutan untuk tugas berikutnya dalam pekerjaan. |
Pembatasan perintah | Apa pun |
Variabel yang dapat diatur | Apa pun |
Versi agen | 2.144.0 atau lebih tinggi |
Kategori tugas | Paket |
Persyaratan | Deskripsi |
---|---|
Jenis alur | YAML, Build klasik, Rilis klasik |
Berjalan pada | Agen, DeploymentGroup |
Permintaan | Tidak ada |
Kemampuan | Tugas ini tidak memenuhi tuntutan untuk tugas berikutnya dalam pekerjaan. |
Pembatasan perintah | Apa pun |
Variabel yang dapat diatur | Apa pun |
Versi agen | 2.120.0 atau lebih tinggi |
Kategori tugas | Paket |