打包並發佈整合

Azure DevOps 服務 |Azure DevOps Server |Azure DevOps Server 2022

在 Visual Studio 市集發佈與 Azure DevOps 整合的工具、服務或產品。 市集是用戶發現整合與擴充的核心平台。

備註

本文涵蓋 整合( 外部工具與服務)。 關於 擴充功能 (在 Azure DevOps 內執行的附加元件),請參見 「套件與發佈擴充套件」。

先決條件

發佈至 Marketplace 之前,必須先符合下列需求清單。

類別 需求
封裝工具 安裝擴充套件封裝工具(TFX)。 在命令提示字元中執行 npm install -g tfx-cli 。
影像許可權 請確定您有適當的許可權可以使用任何影像,例如圖示、標誌、螢幕快照等等。
Marketplace 概觀 包含一個詳細的 overview.md 檔案,以描述您在 Marketplace 中的項目。
擴充功能圖示 包含延伸模組的圖示,代表您的整合、公司或組織,大小至少為128x128像素(PNG或 JPEG)。
Microsoft產品名稱 針對Microsoft產品使用完整名稱(例如,Azure DevOps 而非 AzDO 或其他縮寫)。
品牌名稱 請勿在延伸模組的名稱中使用品牌名稱。

你還需要以下資產:

  • 至少要有一張關於你的系統集成的截圖
  • 一個給使用者的行動呼籲或入門網址

建立發行者

每個延伸模組或整合,包括來自Microsoft的擴充功能,都必須有發行者。 任何人都可以建立發行者,並在其下發佈延伸模組。 您也可以與其他使用者共享發行者存取權,例如您的開發小組。

  1. 登入 Visual Studio Marketplace 發佈入口網站。

  2. 如果您不是現有發行者的一部分,請選取 [+ 建立發行者]。
    輸入發行者名稱;標識元欄位會根據您的項目自動填入。

    顯示醒目提示按鈕 [建立發行者] 的螢幕快照。

    備註

    • 確保您的發行者名稱在多字節字符的16個字元內。
    • 儲存發行者識別碼—您需要它於延伸模組的指令清單檔案中。

    如果未提示您建立發行者,請卷動至 [相關網站] 底下的 [發佈延伸模組]。

    • 設定唯一的發行者識別碼,例如 mycompany-myteam。 將此數值用於您的 manifest 檔中的 publisher 屬性。
    • 設定顯示名稱,例如 My Team。
  3. 檢閱 Marketplace 發行者合約,然後選取 [建立]。

    創建擴充套件的發布者

建立發行者之後,您可以管理項目,但您發佈之前,項目不會顯示。

建立專案架構

建立以下目錄配置:

home/
├── images/
│   ├── integration-logo.png    (128×128 px minimum)
│   └── screenshot.png          (1366×768 px)
├── overview.md
└── vss-integration.json
File Purpose
overview.md GitHub 特色 Markdown 的整合說明。
vss-integration.json 市場清單文件。 請參見 擴充功能清單參考。

建立清單檔

請先建立 vss-integration.json 以下內容,然後更新整合值:

{
    "manifestVersion": 1,
    "id": "myservice",
    "version": "1.0.0",
    "name": "My Service",
    "publisher": "mycompany",
    "description": "Awesome tools to help you and your team do great things everyday.",
    "targets": [
        {
            "id": "Microsoft.VisualStudio.Services.Integration"
        }
    ],    
    "icons": {
        "default": "images/service-logo.png"
    },
    "categories": [
        "Plan and track"
    ],
    "tags": [
        "working",
        "people person",
        "search"
    ],
    "screenshots": [
        {
            "path": "images/screen1.png"
        },
        {
            "path": "images/screen2.png"
        }
    ],
    "content": {
        "details": {
            "path": "overview.md"
        },
        "license": {
            "path": "fabrikam-license-terms.md"
        }
    },
    "links": {
        "getstarted": {
            "uri": "https://www.mycompany.com/help/getstarted"
        },
        "learn": {
            "uri": "https://www.mycompany.com/features"
        },
        "support": {
            "uri": "https://www.mycompany.com/support"
        }
    },
    "branding": {
        "color": "rgb(34, 34, 34)",
        "theme": "dark"
    }
}

使用以下參考資料更新欄位:

需要下列屬性:

財產 說明 備註
manifestVersion 與清單格式版本對應的數字。 應該是 1。
識別碼 延伸模組的標識碼。 此ID是一個字串,在相同發行者的擴充套件之間必須是唯一的。 它必須以字母或數值字元開頭,並包含 'A' 到 'Z'、'a' 到 'z'、'0' 到 '9' 和 '-' (連字元)。 範例: sample-extension.
版本 指定延伸模組版本的字串。 格式 major.minor.patch應為 ,例如 0.1.2 或 1.0.0。 您也可以針對下列格式新增第四個數位: 0.1.2.3
名字 擴充套件的簡短人類可讀名稱。 限制為200個字元。 範例: "Fabrikam Agile Board Extension".
發行人 發行者的標識碼。 此識別碼必須與擴充功能發布時的識別碼一致。 請參閱 建立和管理發行者。
類別 字串陣列,代表擴充功能所屬的類別。 至少必須提供一個類別,而且您可能包含的類別數目沒有限制。 有效值: Azure Repos、 Azure Boards、 Azure Pipelines、 Azure Test Plans、 和 Azure Artifacts。

筆記:
    - 如果您要以程式設計方式發佈延伸模組,請使用 >tfx-cli 0.6.3 版。
    - 如果您使用 Azure DevOps 擴充功能延伸模組 發佈,請確定其版本為 >= 1.2.8。 您可能需要核准擴充功能更新,因為最近範圍已改變。
    - 先前提到的類別已在 Visual Studio Marketplace 和 Azure DevOps Server 2019 & 中原生存在。
目標 整合或擴充功能所支援的產品和服務。 如需詳細資訊,請參閱 安裝目標。 物件的陣列,其中每個物件都有一個 id 欄位,指出下列其中一項:
    - Microsoft.VisualStudio.Services(與 Azure DevOps 搭配運作的擴充功能)、
    - Microsoft.TeamFoundation.Server(與 Azure DevOps Server 搭配運作的擴充功能)、
    - Microsoft.VisualStudio.Services.Integration、
    - Microsoft.TeamFoundation.Server.Integration(與 Azure DevOps Server 搭配運作的整合)

下列選擇性屬性可協助使用者探索及瞭解您的擴充功能:

財產 說明 備註
描述 用幾個句子描述擴充功能。 限制為200個字元。 描述應該是您延伸模組的「簡短推介」——在 Marketplace 中用幾行描述您的延伸模組,並讓使用者想要安裝它。 請參閱下列範例
圖示 代表延伸模組的圖示字典。 有效密鑰:128x128 像素的 BMP、GIF、EXIF、JPG、PNG 和 TIFF 類型。 未來可能支援其他索引鍵,例如 large (512x512 像素)。 每個鍵的值都是擴充功能中圖示檔案的路徑
標記 字串標籤標的陣列,可協助使用者尋找您的延伸模組。 範例: agile、 project management、 task timer等。
螢幕快照 無法包含在內容中的影像陣列。 當您的內容中展示時,螢幕快照會更有價值,應該用來協助製作您的延伸模組的高品質市場詳情頁面。 對於內容未收錄的較不重要影像,請使用螢幕快照。 每個影像應為1366x768像素。 每個專案的path是該擴充功能中檔案的路徑。
內容 描述您擴充功能給使用者的內容檔案詞典。 每個 延伸模組都應該包含紮實的內容。 這樣您就可以向使用者展示您的擴充功能能夠執行的功能。 使其豐富、易於理解,並在需要時包含螢幕快照。 包含overview.md檔案作為您的基礎內容。 每個檔案都假設為 GitHub Flavored Markdown 格式。 path每個項目的屬性是延伸模組中 Markdown 檔案的路徑。 有效鍵值:details。 未來可能支援其他金鑰。
連結 連結的字典,可協助使用者深入瞭解您的延伸模組、取得支援和移動。 有效的金鑰: getstarted - 第一個步驟,如何設定或使用。 learn - 更深入的內容,可協助用戶進一步瞭解您的延伸模組或服務。 license - 使用者許可協定。 privacypolicy - 延伸模組的隱私策略。 support - 取得擴充功能的說明和支援。 每個索引鍵的值都是具有 uri 字段的物件,這是鏈接的絕對URL
存儲庫 描述延伸模組之原始程式碼存放庫的屬性字典 有效金鑰: type - 存放庫的類型。 範例: git。 uri - 存放庫的絕對 URL。
徽章 來自已核准徽章網站的外部元數據徽章連結陣列, 例如 TravisCI、Appveyor 等等 有效鍵: href - 當使用者選取徽章時,會導向至該連結。 uri - 要顯示的徽章影像絕對 URL。 description - 在鼠標懸停時顯示的徽章描述。
品牌 品牌相關屬性的字典。 有效索引鍵: color - 延伸模組或發行者的主要色彩;可以是十六進位(#ff00ff)、RGB(rgb(100,200,50)或支援的 HTML 色彩名稱(藍色)。 theme - 補充色彩; 將 深色 用於深色品牌色彩,或選擇 淺色 用於淺色品牌色彩。

警告

將public設為false,或省略,直到你準備好公開顯示。

打包整合

  1. 如果你還沒安裝包裝工具,請先安裝:

    npm install -g tfx-cli
    
  2. 將你的整合內容封裝成 .vsix 檔案:

    tfx extension create --manifest-globs vss-integration.json
    

    小提示

    使用 --rev-version 以自動遞增補丁版本號。

發佈至應用程式市集

封裝延伸模組之後,您可以將它上傳至發行者下的 Marketplace。 publisher擴充功能的清單檔中指定的識別碼必須與上傳擴充功能的發行者的識別碼相符。

  1. 從管理入口網站中,從頁面頂端的下拉功能表中選取您的發行者。

  2. 選擇 新增擴充功能>Azure DevOps。

    螢幕快照顯示「新增擴充套件」的下拉功能表及已選取的「Azure DevOps」。

  3. 拖放您的檔案,或選取它來尋找您在上一個封裝步驟中建立的 VSIX 檔案,然後選擇 [ 上傳]。

    此螢幕快照顯示上傳新的 Azure DevOps 擴充功能。

    快速驗證之後,您的延伸模組會出現在已發佈的延伸模塊清單中。 別擔心,這個擴充功能只有您可見。

    顯示已發行延伸模組清單中延伸模組的螢幕快照。

此時,任何帳戶都看不到您的擴充套件。 若要讓其他人看得見,您需要共用延伸模組。

備註

Microsoft在每個已發佈的新和更新的擴充套件上執行病毒掃描。 在掃描結果顯示無問題之前,我們不會在 Marketplace 中發佈擴充套件以供公共使用。 如此一來,我們也會避免在 Marketplace 頁面上呈現不適當的或冒犯性內容。

分享此系統整合

在你能在 Azure DevOps 組織中安裝整合之前,必須先與該組織分享它。

  1. 從顯示的項目列表中選擇您的整合項目。
  2. 選取共用。
  3. 輸入組織名稱(例如, fabrikam-fiber-inc 為 dev.azure.com/fabrikam-fiber-inc)。

更新整合

若要更新您已發佈的擴充功能,請執行下列步驟:

小提示

更新您的延伸模組,而不是移除再重新上傳。 我們建議維持兩個擴充功能:publisher.extension,在 Marketplace 上公開讓客戶使用;以及 publisher.extension-dev,僅限與貴組織共用,以便進行開發和測試的私人擴充功能。 您不需要兩份原始程式碼複本,只要針對每個延伸模組維護個別的指令清單檔案即可。 封裝時,請將適當的指令清單檔提供給 tfx-cli 工具。 如需詳細資訊,請參閱 TFX 擴充功能命令。

  1. 從顯示的項目清單中選取您的延伸模組。
  2. 以滑鼠右鍵點擊並選取 更新 以更新開發版本,如 publisher.extension-dev。
  3. 驗證您的擴充功能。
  4. 將相同的更新套用至生產版本,例如 publisher.extension。
  5. 瀏覽至擴充功能的 .vsix 檔案並將其上傳。

Azure DevOps 會自動安裝已擁有擴充功能之所有帳戶的更新版本。 新的安裝也會收到最新版本。

公開整合結果

為了讓你的整合對所有 Marketplace 用戶都可見,請在清單設定檔中將public旗標設定為true,然後重新發布。

欲了解更多關於公開上市所需資格的資訊,請參閱公開擴充功能。