拡張機能の公開

適用先:Windows Admin Center、Windows Admin Center Preview

拡張機能を開発したら、それを発行し、他のユーザーがテストまたは使用できるようにします。 発行者と発行の目的に応じて、以下に示すオプションがいくつかあります。これらのオプションについては、公開の手順と要件を参照してください。

公開オプション

Windows 管理センターでサポートされる構成可能なパッケージソースには、主に次の3つのオプションがあります。

  • Microsoft のパブリック Windows 管理センター NuGet フィード
  • 独自のプライベート NuGet フィード
  • ローカルまたはネットワークのファイル共有

Windows 管理センターの拡張機能フィードに発行しています

既定では Windows 管理センターは、Microsoft の Windows 管理センター製品チームによって管理されている NuGet フィードに接続されています。 Microsoft によって開発された新しい拡張機能の早期プレビュー版は、このフィードに公開され、Windows 管理センターのユーザーが使用できるようになります。 拡張機能のビルドとリリースを計画している外部の開発者は、このフィードへ の発行要求を送信 することもできます。 外部の開発者は、このフィードに発行する前に、Windows 管理センターの拡張機能 Publisher 契約および拡張機能参加ポリシーに同意する必要があります。

別の NuGet フィードへの発行

独自の NuGet フィードを作成して、プライベートソースの設定または NuGet ホスティングサービスの使用に関するさまざまなオプションの1つを使用して、拡張機能をに発行することもできます。 NuGet フィードは、NuGet v2 API をサポートしている必要があります。 Windows 管理センターでは現在フィード認証がサポートされていないため、すべてのユーザーに読み取りアクセスを許可するようにフィードを構成する必要があります。

ファイル共有への発行

拡張機能へのアクセスを組織または制限されたユーザーグループに限定するには、SMB ファイル共有を拡張機能フィードとして使用できます。 この場合、フィードへのアクセスを許可するために、ファイル共有とフォルダーのアクセス許可が適用されます。

リリース用に拡張機能を準備する

次の開発に関するトピックを必ず読み、検討してください。

プレビューリリースとしてリリースすることを検討してください

評価のために拡張機能のプレビューバージョンをリリースする場合は、次のことをお勧めします。

  • Nuspec ファイル内の拡張機能のタイトルの末尾に "(Preview)" を追加します。
  • Nuspec ファイルでの拡張機能の説明の制限事項について説明します。

拡張機能パッケージの作成

Windows管理センターでは、拡張機能の配布とダウンロードに NuGet パッケージとフィードを利用しています。 パッケージを出荷するには、プラグインと拡張機能を含む NuGet パッケージを生成する必要があります。 1つのパッケージには、UI 拡張機能とゲートウェイプラグインの両方を含めることができます。次のセクションでは、このプロセスについて説明します。

1. 拡張機能をビルドする

拡張機能のパッケージ化を開始する準備ができたら、すぐにファイルシステムに新しいディレクトリを作成し、コンソールを開いて、CD に追加します。 これは、パッケージを構成するすべての nuspec およびコンテンツディレクトリを格納するために使用されるルートディレクトリになります。 このドキュメントの期間中は、このフォルダーを "NuGet パッケージ" として参照します。

UI 拡張機能

UI 拡張機能に必要なすべてのコンテンツを収集するプロセスを開始するには、ツールで "gulp build" を実行し、ビルドが成功したことを確認します。 このプロセスでは、拡張機能のルートディレクトリ (src ディレクトリの同じレベル) にある "バンドル" という名前のフォルダーに、すべてのコンポーネントがまとめてパッケージ化されます。 このディレクトリとそのすべての内容を "NuGet Package" フォルダーにコピーします。

ゲートウェイプラグイン

ビルドインフラストラクチャを使用して (これは、Visual Studio を開いて [ビルド] ボタンをクリックするだけで簡単にできます)、プラグインをコンパイルしてビルドします。 ビルド出力ディレクトリを開き、プラグインを表す Dll をコピーして、"package" という名前の "NuGet package" ディレクトリ内の新しいフォルダーに配置します。 FeatureInterface dll をコピーする必要はありません。コードを表す Dll だけをコピーします。

2. nuspec ファイルを作成する

NuGet パッケージを作成するには、まず nuspec ファイルを作成する必要があります。 nuspec ファイルは、NuGet パッケージのメタデータを含む XML マニフェストです。 このマニフェストは、パッケージを作成するためと、コンシューマーに情報を提供するための、両方に使われます。 このファイルを "NuGet Package" フォルダーのルートに配置します。

Nuspec ファイルの例と、必須または推奨されるプロパティの一覧を次に示します。 完全なスキーマについては、 nuspec のリファレンスを参照してください。 任意のファイル名を使用して、nuspec ファイルをプロジェクトのルートフォルダーに保存します。

重要

<id>nuspec ファイルの値は、プロジェクトのファイル内の値と一致する必要があります。そうしないと、発行された "name" manifest.json 拡張機能が Windows 管理センターで正常に読み込まれません。

<?xml version="1.0" encoding="utf-8"?>
<package xmlns="https://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
  <metadata>
    <id>contoso.project.extension</id>
    <version>1.0.0</version>
    <title>Contoso Hello Extension</title>
    <authors>Contoso</authors>
    <owners>Contoso</owners>
    <requireLicenseAcceptance>false</requireLicenseAcceptance>
    <projectUrl>https://msft-sme.myget.org/feed/windows-admin-center-feed/package/nuget/contoso.sme.hello-extension</projectUrl>
    <licenseUrl>http://YourLicenseLink</licenseUrl>
    <iconUrl>http://YourLogoLink</iconUrl>
    <description>Hello World extension by Contoso</description>
    <copyright>(c) Contoso. All rights reserved.</copyright>
    <tags></tags>
  </metadata>
  <files>
    <file src="bundle\**\*.*" target="ux" />
    <file src="package\**\*.*" target="gateway" />
  </files>
</package>
プロパティ名 必須/推奨 [説明]
packageType 必須 "windowsadmincenter extension" を使用します。これは Windows 管理センターの拡張機能に定義されている NuGet パッケージの種類です。
id 必須 フィード内の一意のパッケージ識別子。 この値は、プロジェクトのファイルの manifest.jsの "name" 値と一致する必要があります。 ガイダンスについては、一意のパッケージ識別子の選択に関するページをご覧ください。
title Windows 管理センターフィードに発行するために必要 Windows 管理センターの拡張機能マネージャーに表示されるパッケージのフレンドリ名。
version 必須 拡張機能のバージョン。 セマンティックバージョン管理 (SemVer 規約)を使用することをお勧めしますが、必須ではありません。
作成者 必須 会社の代理として発行する場合は、会社名を使用します。
description 必須 拡張機能の機能についての説明を入力します。
iconUrl Windows 管理センターフィードに発行する場合に推奨されます 拡張機能マネージャーに表示するアイコンの URL。
projectUrl Windows 管理センターフィードに発行するために必要 拡張機能の web サイトの URL。 別の web サイトがない場合は、NuGet フィードでパッケージ web ページの URL を使用します。
licenseUrl Windows 管理センターフィードに発行するために必要 拡張機能の使用許諾契約書の URL。
files 必須 この2つの設定では、UI 拡張機能とゲートウェイプラグインに対して Windows 管理センターで必要なフォルダー構造を設定します。

3. 拡張機能 NuGet パッケージをビルドする

前の手順で作成した nuspec ファイルを使用して、NuGet パッケージを作成します。 nupkg ファイルをアップロードして NuGet フィードに発行することができます。

  1. NuGet クライアントツールの web サイトから nuget.exe CLI ツールをダウンロードします。
  2. "nuget.exe pack [. nuspec file name]" を実行して、nupkg ファイルを作成します。

4. 拡張機能 NuGet パッケージに署名する

拡張機能に含まれる .dll ファイルは、信頼された証明機関 (CA) の証明書を使用して署名する必要があります。 既定では、Windows 管理センターが運用モードで実行されていると、署名されていない .dll ファイルは実行されません。

また、パッケージの整合性を保証するために、拡張機能 NuGet パッケージに署名することを強くお勧めしますが、これは必須の手順ではありません。

5. 拡張機能 NuGet パッケージをテストする

これで、拡張機能パッケージをテストする準備ができました。 nupkg ファイルを NuGet フィードにアップロードするか、ファイル共有にコピーします。 別のフィードまたはファイル共有のパッケージを表示およびダウンロードするには、フィードの構成を、NuGet フィードまたはファイル共有を指すように変更する必要があります。 テスト時には、拡張機能マネージャーでプロパティが正しく表示されていることを確認し、拡張機能を正常にインストールしてアンインストールすることができます。

拡張機能を Windows 管理センターフィードに発行する

Windows 管理センターフィードに発行することで、すべての Windows 管理センターユーザーが拡張機能を使用できるようにすることができます。 Windows 管理センター SDK はまだプレビュー段階であるため、開発上の問題の解決に役立つように、お客様と密接に連携し、ユーザーに高品質の製品とエクスペリエンスを提供できるようにしたいと考えています。

拡張機能のレビュー要求を Microsoft に送信する前に、 wacextensionrequest@microsoft.com パブリックフィードに拡張機能を公開する目的を表す電子メールを送信する必要があります。 ドキュメントの内容を確認して承認するために、拡張機能 Publisher 契約および拡張機能参加ポリシーのコピーが提供されます。

拡張機能の初期バージョンをリリースする前に、リリース前に少なくとも2-3 週間後に拡張機能のレビュー要求をマイクロソフトに送信して、十分な情報を確認し、必要に応じて拡張機能に変更を加えることをお勧めします。 拡張機能を発行する準備ができたら、それをレビューのために送信する必要があります。承認されている場合は、フィードに発行します。 Microsoft 拡張機能パッケージを送信することにより、拡張機能の Publisher 契約および拡張機能参加ポリシーの条項に従うことに同意したことになります。

その後、拡張機能の更新プログラムをリリースする場合は、レビューのために別の要求を送信する必要があります。 変更の範囲によっては、更新レビューのターンアラウンド時間は一般的に短くなります。

拡張機能レビュー要求を Microsoft に送信する

拡張機能のレビュー要求を送信するには、次の情報を入力して、に電子メールで送信し wacextensionrequest@microsoft.com ます。 1週間以内に電子メールに返信します。

Windows Admin Center Extension Review Request
1. Name and email address of extension owner/developer (up to 3 users). If you will be releasing an extension on behalf of your company, provide your company email address.
2. Company name (Only required if you are releasing an extension on behalf of your company):
3. Extension name:
4. Release target date (estimate):
5. For new extension submission - Extension description (early design wire frames, screen mockups or product screenshots are highly recommended):
6. For extension update review – Description of changes (include product screenshots if UI has been significantly changed):

レビューおよび発行のために拡張機能パッケージを送信する

拡張機能パッケージを作成するための上記の手順に従ってください。 nuspec ファイルが適切に定義され、ファイルが署名されていることを確認してください。 また、次のようなプロジェクト web サイトを用意することもお勧めします。

  • スクリーンショットやビデオを含む拡張機能の詳細な説明
  • フィードバックまたは質問を受信するための電子メールアドレスまたは web サイト機能

拡張機能を発行する準備ができたら、に電子メールを送信 wacextensionrequest@microsoft.com します。拡張機能パッケージを送信する方法については、こちらで説明します。 パッケージを受信したら、レビューを行い、承認された場合は Windows 管理センターフィードに発行します。