Azure DevOps Services |Azure DevOps Server 2022 |Azure DevOps Server 2020
Azure Pipelines を使用すると、開発者は、同じ組織内の Azure Artifacts フィード、他の組織、Maven Central などのパブリック レジストリに Maven アーティファクトを発行できます。 この記事では、YAML とクラシック パイプラインの両方を使用して Maven アーティファクトを発行する方法について説明します。
前提条件
製品 | 必要条件 |
---|---|
Azure DevOps | - Azure DevOps 組織 と プロジェクト。 - Azure Artifacts フィード。 - 動作中のパイプライン。 - アクセス許可: - プロジェクト内のすべてのパイプラインへのアクセスを許可するには、プロジェクト管理者グループのメンバーである必要があります。 - サービス接続を作成するには、サービス接続の管理者または作成者ロールが必要です。 |
同じ組織内のフィードにパッケージを発行する
- Azure DevOps 組織にサインインしてから、プロジェクトに移動します。
- Azure DevOps コレクションにサインインし、プロジェクトに移動します。
- [パイプライン] を選択し、使用するパイプライン定義を選択します。
[ 編集] を選択し、次のスニペットを YAML パイプラインに追加します。
steps: - task: MavenAuthenticate@0 displayName: 'Authenticate to Azure Artifacts feed' inputs: artifactsFeeds: 'MavenDemo,MavenDemoFeed2' ## Select one or multiple feeds to authenticate with. - script: | mvn deploy displayName: 'Publish'
注
Azure Pipelines を使用してフィードにパッケージを発行するには、 Project Collection Build Service とプロジェクトの Build Service ID の両方にフィード設定で フィード パブリッシャー (共同作成者) ロールが割り当てられていることを確認します。 詳細については、 権限の管理 を参照してください。
別の組織のフィードにパッケージを発行する
別の Azure DevOps 組織のフィードにパッケージを発行するには、まずターゲット組織で個人用アクセス トークン (PAT) を作成してから、その PAT を使用してサービス接続を作成し、ターゲット フィードで認証する必要があります。
個人用アクセス トークンを作成する
ターゲット フィードをホストする組織に移動します。
個人用アクセス トークンを作成 するには、Packaging Read & 書き込み スコープを設定します。次のセクションで、必要に応じて個人用アクセス トークンをコピーします。
サービス接続を作成する
パイプラインを実行する Azure DevOps 組織にサインインし、プロジェクトに移動します。
[プロジェクト設定]>[サービス接続] に移動します。
[新しいサービス接続]、[Maven]、[次へ] の順に選択します。
[認証方法] で、[ユーザー名とパスワード] を選択します。 リポジトリの URL とリポジトリ ID を入力します。
[Username]\( ユーザー名 \) フィールドに任意の文字列値を入力します (必須ですが、Azure Pipelines では、
pom.xml
構成と、認証用に前に作成した個人用アクセス トークンが使用されます)。- [パスワード] には、先ほど作成した個人用アクセス トークンを貼り付けます。
- サービス接続の 名前 を指定します。
- [ すべてのパイプラインにアクセス許可を付与する ] チェック ボックスをオンにします。
完了したら、 [保存] を選択します。
パッケージの公開
Azure DevOps 組織にサインインしてから、プロジェクトに移動します。
[パイプライン] を選択し、使用するパイプライン定義を選択します。
[ 編集] を選択し、次のスニペットを YAML パイプラインに追加します。
steps: - task: MavenAuthenticate@0 displayName: 'Authenticate to Azure Artifacts feed' inputs: MavenServiceConnections: <NAME_OF_YOUR_SERVICE_CONNECTION> - script: | mvn deploy displayName: 'Publish'