次の方法で共有


コマンド ラインから発行する

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Azure DevOps のクロスプラットフォーム CLI (tfx-cli) を使用して、拡張機能を Visual Studio Marketplace に発行できます。

詳細については、発行、インストール共有の概要を参照してください。

前提 条件

Node Package Manager から TFX CLI を取得し、Microsoft Entra トークンまたは個人用アクセス トークン (PAT) を生成します。 また、まだ行っていない場合は、ギャラリーでパブリッシャーを設定します。

Azure DevOps のクロスプラットフォーム CLI を取得する

  1. お持ちでない場合は、NodeJSダウンロードしてインストールします。 セットアップ中には、[PATH に追加] が選択された状態にしておいてください。

  2. コマンド プロンプトを開き、「npm i -g tfx-cli」と入力します。

既に TFX CLI がインストールされている場合は、npm up -g tfx-cliを実行して最新のリリースに更新できます。

Microsoft Entra トークンをサービス プリンシパルとして発行する

拡張機能を サービス プリンシパルとして発行することもできます。

  1. サービス プリンシパルをメンバーとしてパブリッシャー アカウントに追加します。 サービス プリンシパルの ID は、Profiles - Get を使用してプロファイルから取得できます。 次に、前の手順の ID を使用して、サービス プリンシパルをメンバーとして発行元に追加できます。

  2. サービス プリンシパルを使用して、TFX CLI で拡張機能を発行します。 次の TFX CLI コマンドを実行して、そのアクセス トークンを使用します。

tfx extension publish --publisher my-publisher --vsix my-publisher.my-extension-1.0.0.vsix --auth-type pat -t <ENTRA_TOKEN>

個人用アクセス トークンを使用して発行する

  1. 組織にログインします (https:dev.azure.com/{organization})。

  2. ホーム ページで、ユーザー設定アイコンを開き、[プロファイル選択します。

    ユーザー設定アイコンを選択した後にプロファイルを選択

  3. [セキュリティ] で、[個人用アクセス トークン] を選択し、[新しいトークン選択します。

    新しい個人用アクセス トークン を作成する

  4. フォームを完成させてください。

    • トークンに名前を付けます
    • [すべてのアクセス可能な組織を選択します。これは、CLI を使用して発行するときに機能する唯一の値です。 1 つの組織のみを選択すると、PAT が有効であってもエラーが発生します
    • トークンの有効期限を選択します。 これは、Visual Studio Marketplace 発行 API が組織のコンテキスト外で機能するため、必須です
    • このトークンに関連付けられているアクセスのスコープを設定します。 必ず、マーケットプレース (発行) スコープを選択してください。 このスコープにより、トークンは Marketplace に拡張機能を発行することのみに制限されます。
    • を選択し を作成する

    ..

  5. 生成された個人用アクセス トークンをコピーします。 必ず秘密にしてください。

    トークンをコピーして秘密にしておく

TFX CLI がインストールされ、トークンを取得したら、ツールを使用して拡張機能をパッケージ化して発行できます。

  1. 拡張機能のルート ディレクトリにコマンド プロンプトを開きます。
  2. 次のコマンドを実行して拡張機能を発行します。 メッセージが表示されたら、認証するトークンを入力します。
tfx extension publish --publisher <YOUR_PUBLISHER_ID> --manifest-js <YOUR_EXTENSION_MANIFEST> --share-with <ACCOUNT_NAME>

潜在的なエラー

拡張機能が既に公開されている場合は、次のエラーが表示されることがあります。

Failed Request: Internal Server Error(500) - Version number must increase each time an extension is published. Extension: fabrikam.my-extension  Current version: 0.1.9  Updated version: 0.1.9

フラグを追加して、拡張機能のバージョン パッチを自動的にインクリメントできます。 これにより、新しいバージョンもマニフェストに保存されます。

手記

create で使用できるオプションはすべて、publish コマンドで使用できます。

C:\vso-team-calendar>tfx extension publish --publisher publishFabrikam --manifest-js fabrikam.config.js --share-with fabrikam --rev-version
Copyright Microsoft Corporation
> Personal access token:
Checking if this extension is already published
It is, update the extension
Waiting for server to validate extension package...
Sharing extension with fabrikam.

=== Completed operation: publish extension ===
 - Packaging: C:\vso-team-calendar\fabrikam.team-calendar-0.2.6.vsix
 - Publishing: success
 - Sharing: shared with fabrikam