發佈延伸模組

適用於:Windows Admin Center、Windows Admin Center 預覽版

當您開發延伸模組之後,您會想要將它發佈,讓其他人可以測試或使用它。 根據您的觀眾和發佈的目的,我們將在下面介紹一些選項,以及發佈的步驟和需求。

發行選項

Windows Admin Center 支援的可設定套件來源有三個主要選項:

  • Microsoft 的公開 Windows Admin Center NuGet 摘要
  • 您自己的私用 NuGet 摘要
  • 本機或網路檔案共用

發行至 Windows Admin Center 擴充功能摘要

根據預設,Windows Admin Center 會連接到 Microsoft Windows Admin Center 產品小組所維護的 NuGet 摘要。 Microsoft 所開發的新延伸模組的早期預覽版本,可能會發佈到此摘要,並且可供 Windows Admin Center 使用者使用。 如果外部開發人員打算公開建立和發行延伸模組,也可以提交發行到此摘要 的要求 。 在發佈至此摘要之前,外部開發人員必須同意 Windows Admin Center 的延伸模組 Publisher 合約和延伸模組參與原則

發行至不同的 NuGet 摘要

您也可以建立自己的 NuGet 摘要來發佈您的延伸模組,以使用許多不同選項來設定私人來源或使用 NuGet 主機服務。 NuGet 摘要必須支援 NuGet v2 API。 因為 Windows Admin Center 目前不支援摘要驗證,所以必須將摘要設定為允許任何人的讀取權限。

發行至檔案共用

若要限制您的組織或有限的人員群組的延伸模組存取權,您可以使用 SMB 檔案共用做為延伸模組摘要。 在此情況下,將會套用檔案共用和資料夾的許可權,以允許存取饋送。

準備您的延伸模組以進行發行

請確定您已閱讀並考慮下列開發主題:

請考慮發行為預覽版本

如果您要發行延伸模組的預覽版本,以供評估之用,建議您:

  • 在 nuspec 檔案中,將 " (Preview) " 附加至延伸模組標題的結尾
  • 說明 nuspec 檔案中擴充功能描述的限制

建立延伸模組套件

Windows Admin Center 利用 NuGet 封裝和饋送來散發和下載延伸模組。 為了讓您的套件出貨,您必須產生包含外掛程式和延伸模組的 NuGet 套件。 單一套件可以同時包含 UI 延伸模組以及閘道外掛程式,下一節將逐步引導您完成此程式。

1. 建立您的延伸模組

當您準備好要開始封裝擴充功能時,請在檔案系統上建立新的目錄、開啟主控台,然後將它放入其中。 這會是我們將用來包含所有將組成套件之 nuspec 和內容目錄的根目錄。 本檔的持續時間內,我們會將此資料夾參考為「NuGet 套件」。

UI 延伸模組

若要開始收集 UI 延伸模組所需的所有內容,請在您的工具上執行 "gulp build",並確認組建成功。 此程式會將所有元件封裝在位於您擴充功能根目錄中名為「套件組合」的資料夾中, (在相同層級的 src 目錄) 。 將此目錄及其所有內容複寫到「NuGet 套件」資料夾。

閘道外掛程式

使用您的組建基礎結構 (這可能相當簡單,只要開啟 Visual Studio 然後按一下 [組建] 按鈕) ,編譯並建立您的外掛程式即可。 開啟您的組建輸出目錄,並複製代表您外掛程式的 Dll (s) ,然後將它們放在名為 "Package" 的 "NuGet Package" 目錄內的新資料夾中。 您不需要複製 FeatureInterface dll,只要是代表程式碼的 Dll (s) 就可以了。

2. 建立 nuspec 檔案

若要建立 NuGet 封裝,您必須先建立 nuspec 檔案。 nuspec 檔案是包含 NuGet 套件中繼資料的 XML 資訊清單。 此資訊清單用來建置套件和向取用者提供資訊。 將這個檔案放在 "NuGet Package" 資料夾的根目錄中。

以下是 nuspec 檔案的範例,以及必要或建議屬性的清單。 如需完整的架構,請參閱 nuspec 參考。 使用您選擇的檔案名,將 nuspec 檔案儲存至您專案的根資料夾。

重要

<id>nuspec 檔案中的值必須符合專案檔中的 "name"manifest.json ,否則您的已發佈延伸模組在 Windows Admin Center 中將無法成功載入。

<?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 必要 使用 "WindowsAdminCenterExtension",這是為 Windows Admin Center 擴充功能定義的 NuGet 套件類型。
id 必要 摘要中的唯一封裝識別碼。 此值必須符合專案的資訊清單. json 檔案中的 "name" 值。 如需指導方針,請參閱選擇唯一的套件識別碼
title 發行至 Windows Admin Center 摘要所需 顯示在 Windows Admin Center Extension Manager 中之封裝的易記名稱。
version 必要 延伸模組版本。 建議使用 (SemVer 慣例) 的語義版本 設定,但非必要。
authors 必要 如果代表您的公司發佈,請使用您的公司名稱。
description 必要 提供延伸模組功能的描述。
iconUrl 發行至 Windows Admin Center 摘要時的建議 要在擴充管理員中顯示的圖示 URL。
projectUrl 發行至 Windows Admin Center 摘要所需 延伸模組網站的 URL。 如果您沒有不同的網站,請在 NuGet 摘要上使用套件網頁的 URL。
licenseUrl 發行至 Windows Admin Center 摘要所需 您延伸模組的使用者授權合約的 URL。
files 必要 這兩個設定會設定 Windows Admin Center 需要的使用者介面擴充功能和閘道外掛程式的資料夾結構。

3. 建立延伸模組 NuGet 套件

使用您先前建立的 nuspec 檔案,您現在將建立可上傳併發布至 NuGet 摘要的 NuGet nupkg 檔案。

  1. NuGet 用戶端工具網站下載 nuget.exe CLI 工具。
  2. 執行 "nuget.exe pack [. nuspec file name]" 來建立 nupkg 檔案。

4. 簽署您的延伸模組 NuGet 套件

延伸模組中包含的任何 .dll 檔案都必須使用信任的憑證授權單位單位 (CA) 的憑證進行簽署。 根據預設,當 Windows Admin Center 在生產模式中執行時,不帶正負號的 .dll 檔案將會遭到封鎖而無法執行。

我們也強烈建議您簽署延伸模組 NuGet 套件,以確保套件的完整性,但這不是必要的步驟。

5. 測試您的延伸模組 NuGet 套件

您的延伸模組套件現在已準備好進行測試! Upload nupkg 檔案傳送至 NuGet 摘要,或將它複製到檔案共用。 若要從不同的摘要或檔案共用中查看及下載套件,您必須變更摘要設定,以指向您的 NuGet 摘要或檔案共用。 測試時,請確定已在 [擴充管理員管理員] 中正確顯示內容,而且您可以成功地安裝和卸載您的延伸模組。

將您的延伸模組發佈至 Windows Admin Center 摘要

藉由發行至 Windows Admin Center 摘要,您可以將擴充功能提供給任何 Windows Admin Center 使用者。 因為 Windows Admin Center SDK 仍處於預覽狀態,所以我們想要與您密切合作,以協助解決開發問題,並確保您能夠為您的使用者提供品質的產品和體驗。

將延伸模組審核要求提交給 Microsoft 之前,您必須傳送電子郵件,以 wacextensionrequest@microsoft.com 表示將延伸模組發佈至公用摘要的意圖。 我們將為您提供延伸模組 Publisher 合約的複本,以及書面參與原則,以供您在撰寫時進行審查和認可。

發行您的擴充功能的初始版本之前,建議您先將延伸模組審核要求提交給 Microsoft 至少2-3 周後再發行,以確保我們有足夠的時間進行審查,並在必要時對您的延伸模組進行任何變更。 當您的延伸模組準備好發佈之後,您必須將它傳送給我們進行審核,並在核准之後,將其發佈至摘要。 藉由將您的延伸模組套件傳送給 Microsoft,即表示您同意受限於延伸模組的條款 Publisher 合約和延伸模組參與原則。

之後,如果您想要發行延伸模組的更新,您必須提交另一個要求以供審查。 根據變更的範圍而定,更新審核的周轉時間通常應該較短。

將延伸模組審核要求提交給 Microsoft

若要提交延伸模組審核要求,請輸入下列資訊,並以電子郵件傳送給 wacextensionrequest@microsoft.com 。 我們會在一周內回復您的電子郵件。

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 檔案並簽署檔案。 我們也建議您有一個專案網站,包括下列專案:

  • 延伸模組的詳細說明,包括螢幕擷取畫面或影片
  • 接收意見反應或問題的電子郵件地址或網站功能

當您準備好發佈您的延伸模組時,請傳送電子郵件給 wacextensionrequest@microsoft.com 我們,我們將提供有關如何將您的延伸模組套件傳送給我們的指示。 當我們收到您的套件之後,我們將會進行審查,並在核准後發佈至 Windows Admin Center 摘要。