發佈擴充功能

適用於: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 摘要的要求。 發佈至此摘要之前,外部開發人員必須同意 Windows Admin Center 的擴充功能發行者合約擴充功能參與原則

發佈至不同的 NuGet 摘要

您也可以建立自己的 NuGet 摘要,以使用設定私有來源或使用 NuGet 託管服務的眾多不同選項之一來發佈您的擴充功能。 NuGet 摘要必須支援 NuGet v2 API。 因為 Windows Admin Center 目前不支援摘要驗證,因此摘要必須設定為允許任何人讀取存取權。

發佈至檔案共用

若要限制對組織或有限人員群組的擴充功能存取,您可以使用 SMB 檔案共用作為擴充功能摘要。 當使用檔案共享託管您的擴充程式訊息摘要時,會套用檔案和資料夾權限管理訊息摘要的存取權。

準備您的擴充功能以發行

請務必閱讀並考慮下列開發文章:

請考慮發行為預覽版本

如果您要針對評估目的發行擴充功能的預覽版本,建議您:

  • 將「(Preview)」附加至 .nuspec 檔案中擴充功能標題的結尾
  • 說明 .nuspec 檔案中擴充功能描述的限制

建立擴充功能套件

Windows Admin Center 會利用 NuGet 套件和摘要來散發和下載擴充功能。 若要提供套件,您需要產生包含外掛程式和擴充功能的 NuGet 套件。 單一套件可以包含 UI 擴充功能和閘道外掛程式。 下一節將逐步引導您完成此程式。

建置您的擴充功能

一旦您準備好開始封裝擴充功能,請在檔案系統上建立新的目錄、開啟主控台,然後將 CD 放入其中。 此目錄是我們用來包含構成套件之所有 nuspec 和內容目錄的根目錄。 我們會針對本文的其餘部分呼叫此資料夾 NuGet 套件

Extensions

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

閘道外掛程式

使用您的建置基礎結構(可能就像開啟 Visual Studio 並選取 [建置] 按鈕一樣簡單,編譯和建置您的外掛程式。 開啟組建輸出目錄,複製代表外掛程式的 DLL 或 DLL,並將其放在名為「package」的「NuGet Package」目錄內的新資料夾中。 您不需要複製 FeatureInterface DLL,只需要代表程式碼的 DLL 或 DLL。

建立 nuspec 檔案

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

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

重要

.nuspec 檔案中的 <id> 值必須符合您專案 manifest.json 檔案中的 "name" 值,否則您的已發佈擴充功能將無法在 Windows Admin Center 中順利載入。

<?xml version="1.0">
<package>
  <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 套件類型。
識別碼 必要 摘要內的唯一套件識別碼。 此值必須符合專案 manifest.json 檔案中的「name」值。 如需指導方針,請參閱選擇唯一的套件識別碼
title 發佈至 Windows Admin Center 摘要的必要專案 Windows Admin Center 擴充功能管理員中顯示的套件易記名稱。
version 必要 擴充功能版本 建議使用 語意版本控制(SemVer 慣例),但並非必要。
作者 必要 如果代表公司發佈,請使用您的公司名稱。
description 必要 提供擴充功能功能的描述。
iconUrl 發佈至 Windows Admin Center 摘要時建議 要顯示在擴充功能管理員中的圖示 URL。
projectUrl 發佈至 Windows Admin Center 摘要的必要專案 擴充功能網站的 URL。 如果您沒有個別的網站,請在 NuGet 摘要上使用套件網頁的 URL。
licenseUrl 發佈至 Windows Admin Center 摘要的必要專案 擴充功能使用者授權合約的 URL。
files 必要 這兩個設定會設定 Windows Admin Center 預期 UI 擴充功能和閘道外掛程式的資料夾結構。

建置擴充功能 NuGet 套件

使用您所建立的 .nuspec 檔案,您現在必須建立 NuGet 套件 .nupkg 檔案,以便上傳並發布至 NuGet 摘要。

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

簽署擴充功能 NuGet 套件

您的擴充功能中包含的任何 .dll 檔案都必須以受信任的憑證授權單位單位 (CA) 的憑證簽署。 根據預設,當 Windows Admin Center 在生產模式中執行時,會封鎖未簽署 .dll 的檔案執行。

建議您簽署擴充功能 NuGet 套件,以確保套件的完整性。

注意

如果您計劃擴充程式支援 Windows Defender 應用程式控制,必須簽署您的套件和裡頭所有檔案。 深入瞭解使用 Windows Defender 應用程式控制功能簽署。

測試擴充功能 NuGet 套件

您的擴充功能套件現在已準備好進行測試! 將 .nupkg 檔案上傳至 NuGet 摘要,或將其複製到檔案共用。 若要從不同的摘要或檔案共用檢視和下載套件,您需要變更摘要組態以指向 NuGet 摘要或檔案共用。 測試時,請確定屬性在擴充功能管理員中正確顯示,而且您可以成功安裝和卸載擴充功能。

將您的擴充功能發佈至 Windows Admin Center 摘要

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

在提交擴充功能檢閱要求給 Microsoft 之前,您必須傳送電子郵件至 wacextensionrequest@microsoft.com 表達將擴充功能發佈至公用摘要的意圖。 我們提供您擴充功能發行者合約和擴充功能參與原則的副本,以書面方式檢閱和認可。

發行擴充功能的初始版本之前,建議您在發行前至少 2-3 周將擴充功能檢閱要求提交給 Microsoft。 在發行前允許 2-3 周,可確保我們有足夠的時間檢閱,並讓您在必要時對您的擴充功能進行任何變更。 當您的擴充功能準備好發佈之後,您必須將它傳送給我們以供檢閱。 如果您的擴充功能已核准,我們會將其發佈至摘要給您。 藉由傳送 Microsoft 您的擴充功能套件,您同意受擴充功能發行者合約條款和擴充功能參與原則的約束。

之後,如果您想要發行擴充功能的更新,您需要提交另一個要求以供檢閱。 視變更範圍而定,更新檢閱的轉機時間通常較短。

將擴充功能檢閱要求提交至 Microsoft

若要提交擴充功能檢閱要求,請提供下列資訊,並以電子郵件傳送至 wacextensionrequest@microsoft.com。 我們會在一周內回覆您的電子郵件。

Windows Admin Center - 擴充功能檢閱要求資訊:

  • 擴充功能擁有者/開發人員的名稱和電子郵件地址 (最多 3 位使用者)。 如果您要代表公司發行擴充功能,請提供您的公司電子郵件地址。
  • 公司名稱 (只有在您代表公司發行擴充功能時才需要)
  • 延伸模組名稱
  • 發行目標日期 (估計)
  • 針對新的擴充功能提交 - 擴充功能描述 (建議的早期設計線框、螢幕模擬或產品螢幕擷取畫面)
  • 如需擴充功能更新檢閱 – 變更的描述 (如果 UI 大幅變更,請包含產品螢幕擷取畫面)

提交擴充功能套件以供檢閱和發佈

請確定您遵循上述指示來建立擴充功能套件,並正確定義 .nuspec 檔案並簽署檔案。 我們也建議您有專案網站,包括:

  • 擴充功能的詳細描述,包括螢幕擷取畫面或影片
  • 用來接收意見反應或問題的電子郵件地址或網站功能

當您準備好發佈擴充功能時,請將電子郵件傳送至 wacextensionrequest@microsoft.com。 我們提供如何傳送擴充功能套件的指示。 收到您的套件之後,我們將檢閱它。 在您的擴充功能套件獲得核准之後,我們會發佈至 Windows Admin Center 摘要。