MavenAuthenticate@0 - Maven Authenticate v0 タスク
このタスクを使用して、Azure Artifacts フィードと外部 Maven リポジトリの資格情報を指定します。
構文
# 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.
入力
artifactsFeeds
-
フィード
string
.
Maven で認証する Azure Artifacts フィード名のコンマ区切りの一覧を指定します。 外部 Maven リポジトリの認証のみが必要な場合は、このフィールドを空白のままにします。
この組織またはコレクションのの外部にあるリポジトリの mavenServiceConnections
- 資格情報
string
.
Maven で認証 外部組織の名前 Maven サービス接続のコンマ区切りの一覧を指定します。 Azure Artifacts フィードの認証のみが必要な場合は、このフィールドを空白のままにします。
タスク コントロールのオプション
すべてのタスクには、タスク入力に加えて制御オプションがあります。 詳細については、「コントロール オプションと一般的なタスク プロパティを参照してください。
出力変数
なし。
注釈
現在のユーザーの settings.xml
ファイル内の Azure Artifacts フィードと外部 Maven リポジトリの資格情報を指定します。
-
認証されたリポジトリを含む
settings.xml
ファイルはどこにありますか? -
mvn -s
スイッチを使用して、独自のsettings.xml
ファイルを指定します。 そこで Azure Artifacts フィードを認証するにはどうすればよいですか? - パイプラインが別のプロジェクト のフィードにアクセスする必要がある
認証されたリポジトリを含む settings.xml
ファイルはどこにありますか?
Maven 認証タスクは、現在のユーザーのホーム ディレクトリ内の settings.xml
ファイルを検索します。 Linux と Mac の場合、パスは $HOME/.m2/settings.xml
です。 Windows の場合、パスは %USERPROFILE%\.m2\settings.xml
です。
settings.xml
ファイルが存在しない場合は、そのパスに新しいファイルが作成されます。
mvn -s
スイッチを使用して、独自の settings.xml
ファイルを指定します。 そこで Azure Artifacts フィードを認証するにはどうすればよいですか?
Maven 認証タスクは、-s
スイッチを使用して指定されたカスタム settings.xml
ファイルにアクセスできません。 カスタム settings.xml
に Azure Artifacts 認証を追加するには、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>
アクセス トークン変数は、次の 手順使用してパイプラインで設定できます。
パイプラインが別のプロジェクトのフィードにアクセスする必要がある
パイプラインがフィードをホストしているプロジェクトとは異なるプロジェクトで実行されている場合は、他のプロジェクトを設定して、ビルド サービスへの読み取り/書き込みアクセスを許可する必要があります。 詳細については、Azure Pipelines でのパッケージのアクセス許可の に関するページを参照してください。
例示
組織内の Maven フィードを認証する
この例では、組織内で 2 つの Azure Artifacts フィードを認証します。
タスクの定義
- task: MavenAuthenticate@0
displayName: 'Maven Authenticate'
inputs:
artifactsFeeds: MyFeedInOrg1,MyFeedInOrg2
MavenAuthenticate
タスクは、{user.home}/.m2/settings.xml
にあるエージェント ユーザーの .m2 ディレクトリに存在する settings.xml
ファイルを更新して、<servers>
要素内に 2 つのエントリを追加します。
settings.xml
<servers>
<server>
<id>MyFeedInOrg1</id>
<username>AzureDevOps</username>
<password>****</password>
</server>
<server>
<id>MyFeedInOrg2</id>
<username>AzureDevOps</username>
<password>****</password>
</server>
</servers>
タスクを正しく認証するには、プロジェクトの pom.xml
内のリポジトリを、Maven のタスクで指定された名前と同じ <id>
に設定します。
pom.xml
プロジェクト スコープ フィード
<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>
組織の範囲指定フィード
<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>
Artifacts フィード URL には、プロジェクトが含まれている場合と含まれていない場合があります。 プロジェクト スコープ フィードの URL にはプロジェクトを含める必要があり、組織スコープ フィードの URL にはプロジェクトを含めてはなりません。 プロジェクト スコープのフィード の詳細を確認します。
組織外で Maven フィードを認証する
この例では、2 つの外部 Maven リポジトリを認証します。
タスクの定義
- task: MavenAuthenticate@0
displayName: 'Maven Authenticate'
inputs:
MavenServiceConnections: central,MavenOrg
MavenAuthenticate
タスクは、{user.home}/.m2/settings.xml
にあるエージェント ユーザーの .m2 ディレクトリに存在する settings.xml
ファイルを更新して、<servers>
要素内に 2 つのエントリを追加します。
settings.xml
<servers>
<server>
<id>central</id>
<username>centralUsername</username>
<password>****</password>
</server>
<server>
<id>MavenOrg</id>
<username>mavenOrgUsername</username>
<password>****</password>
</server>
</servers>
タスクを正しく認証するには、プロジェクトの pom.xml
内のリポジトリを、Maven のタスクで指定された名前と同じ <id>
に設定します。
pom.xml
<repository>
<id>central</id>
<url>https://repo1.maven.org/maven2/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>