打包和发布扩展

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

开发扩展后,可以打包并将其发布到 Visual Studio 市场。 市场是一个全局存储库,用于Microsoft提供专用和公共扩展、集成和其他产品/服务。

注意

有关扩展清单文件中可用的发现属性的信息,帮助用户发现和了解扩展,请参阅 扩展清单参考

先决条件

在发布到市场之前,必须满足以下要求列表。

类别 要求
打包工具 安装扩展打包工具(TFX)。 从命令提示符运行 npm install -g tfx-cli
图像权限 确保你有权使用任何图像,如图标、徽标、屏幕截图等。
市场概述 包括一个全面的 overview.md 文件,用于描述市场中的列表。
扩展图标 包括表示集成、公司或组织的扩展的图标,大小至少为 128x128 像素(PNG 或 JPEG)。
Microsoft产品名称 对Microsoft产品使用全名(例如,Azure DevOps 而不是 AzDO 或其他缩写)。
品牌名称 请勿在扩展名称中使用品牌名称。

创建发布商

每个扩展或集成(包括来自Microsoft的扩展或集成)都必须具有发布者。 任何人都可以创建发布者并在其下发布扩展。 还可以与其他用户(例如开发团队)共享发布者访问权限。

  1. 登录到 Visual Studio Marketplace 发布门户

  2. 如果你不是现有发布者的一部分,请选择“ + 创建发布者”。
    输入发布者名称;根据条目自动填充 ID 字段。

    显示突出显示的按钮“创建发布者”的屏幕截图。

    注意

    • 确保发布者名称在多字节字符的 16 个字符内。
    • 保存发布者 ID:需要在扩展的配置文件中使用它。

    如果未提示创建发布者,请滚动到“相关网站”下的“发布扩展”。

    • 设置唯一的发布者标识符,例如 mycompany-myteam。 请在清单中的 publisher 属性中使用此值。
    • 设置显示名称,例如 My Team
  3. 查看 市场发布者协议,然后选择“ 创建”。

    为扩展创建发布者

创建发布者后,可以管理项目,尽管发布前不会显示任何项目。

打包扩展

若要上传扩展,请将其打包为与 VSIX 2.0 兼容的 .vsix 文件。 Microsoft提供了用于打包和发布扩展的跨平台命令行接口(CLI)。

  1. 打开扩展清单文件(vss-extension.json)并将字段的值 publisher 设置为发布者的 ID。 例如:

    {
        ...
        "id": "my-first-extension",
        "publisher": "AnnetteNielsen",
        ...
    }
    
  2. 在命令提示符下,从扩展目录运行 TFX 工具的打包命令。

    npx tfx-cli extension create
    

    显示一条消息,指示扩展已成功打包:

    === Completed operation: create extension ===
    - VSIX: C:\my-first-extension\AnnetteNielsen.my-first-extension-1.0.0.vsix
    - Extension ID: my-first-extension
    - Extension Version: 1.0.0
    - Publisher: AnnetteNielsen
    

注意

每次更新时,在清单中递增扩展或集成的版本。
使用 --rev-version 命令行开关。 此开关递增扩展的 补丁 版本号,并将新版本保存到清单。

检查包大小

在打包 vsix 后检查其大小。 如果大于 50 MB,则需要对其进行优化。 为此,请参阅以下注意事项:

  • 在扩展包中只声明一次以去重常见的依赖项。
  • 在运行时或安装期间提取依赖项,而不是将它们包含在包中。 请考虑使用工具安装程序库在运行时拉取工具依赖项。 此方法按版本缓存工具以供专用代理使用,避免每次构建都下载。 工具安装程序库在断开连接的方案(无 Internet)中不起作用,应在任务说明或文档中提及。
  • 使用 WebPack 对任务中的依赖项进行树化。

发布扩展

打包扩展后,可以在发布者下将其上传到市场。 publisher扩展清单文件中指定的标识符必须与上传扩展的发布者的标识符匹配。

  1. 在管理门户中,从页面顶部的下拉菜单中选择发布者。

  2. 选择“新建扩展>Azure DevOps”。

    显示“新建扩展”下拉菜单并突出显示了“Azure DevOps”选择的屏幕截图。

  3. 拖放文件或将其选中以查找在上一个打包步骤中创建的 VSIX 文件,然后选择“ 上传”。

    显示为 Azure DevOps 上传新扩展的屏幕截图。

    快速验证后,扩展将显示在已发布的扩展列表中。 别担心,扩展仅对你可见。

    显示已发布扩展列表中的扩展的屏幕截图。

此时,你的扩展对任何帐户都不可见。 若要使它对其他人可见,需要共享扩展。

注意

Microsoft对发布的每个新的和更新的扩展包运行病毒扫描。 在扫描全部清除之前,我们不会在市场中发布扩展供公众使用。 这样我们还可以避免在市场页面上显示不适当的或冒犯性的内容。

共享扩展

在 Azure DevOps 中安装扩展之前,请与组织共享扩展。 若要共享扩展,请执行以下任务:

  1. 在市场管理门户中,从列表中选择扩展,右键单击,然后选择“共享/取消共享”或发布/取消发布”,具体取决于扩展。

    菜单选择的屏幕截图,“共享/取消共享”。

  2. 选择“组织”,然后输入组织的名称。 选择 Enter

    “输入”按钮的屏幕截图。

  3. 关闭面板。

扩展现在可以安装到此组织中。

安装扩展

若要安装共享扩展,请执行以下步骤。

  1. 在市场中,选择扩展以打开其概述页。

    “概述”页面的屏幕截图。

    注意

    由于扩展是专用的,因此只有你和与之共享的组织成员才能看到此页面。

  2. 选择“ 免费 获取”以启动安装过程。 从下拉菜单中选择你与之共享扩展的组织。

    显示扩展安装对话框的屏幕截图。

  3. 选择“安装” 。

祝贺你! 你已将扩展安装到组织中,并已准备好试用。

试用扩展

  1. 在安装向导结束时选择 “继续到组织 ”,转到安装扩展的组织的主页(https://dev.azure.com/{organization})。

  2. 刷新浏览器。

  3. 打开 组织设置,然后选择“ 扩展”。

    “组织设置”的屏幕截图,“扩展”页。

应在“已安装”选项卡上看到新扩展

调试扩展

若要使用 Visual Studio 或浏览器开发人员工具调试扩展,请通过添加 baseUri 属性来更改清单。 此操作可加快开发速度,而无需在每次更改源代码时重新部署扩展。

{
    ...
    "baseUri": "https://localhost:44300",
    ...
}

更改清单时,它会从本地 Web 服务器实例加载扩展。 例如,Visual Studio 中的 IISExpress。 更改清单后,仅部署并安装此调试扩展一次。

注意

在 SSL 模式下运行本地 Web 服务器,因为 Azure DevOps 要求从安全源提供网页。 否则,在扩展 IFRAME 加载期间,浏览器控制台中会出现错误。

更新扩展

若要更新已发布的扩展,请执行以下步骤:

提示

更新扩展,而不是删除并重新上传扩展。 我们建议维护两个扩展: publisher.extension 是在市场中公开供客户使用的扩展,而 publisher.extension-dev 是私人扩展,仅与您的组织共享,用于开发和测试。 不需要两个源代码副本, 只需为每个扩展维护单独的清单文件。 打包时,向 tfx-cli 工具提供相应的清单文件。 有关详细信息,请参阅 TFX 扩展命令

  1. 从显示的项列表中选择扩展。
  2. 右键单击并选择更新以更新开发版本,例如publisher.extension-dev
  3. 验证扩展。
  4. 对生产版本应用相同的更新,例如 publisher.extension
  5. 找到您扩展的 .vsix 文件并上传它。

Azure DevOps 会自动安装已具有扩展的所有帐户的更新版本。 新安装还会收到最新版本。

公开扩展

为市场开发扩展或集成时,请将其保持私密。 这会将扩展的可见性限制为已与之共享的特定帐户。

若要公开提供扩展,请将 公共标志 设置为 true 清单中。

认证

若要在市场中列出公共列表,集成或扩展必须满足以下资格:

  • 适用于或扩展 Azure DevOps。
  • 你或你的公司拥有、开发和许可分发和播发集成或扩展。
  • 扩展或集成是主动维护的。

Microsoft还可以请求演示,并查看计划为市场条目的内容。

排名靠前的发布者

Top Publisher 计划仅适用于具有 Azure DevOps 扩展或集成的发布者。 它不适用于 Visual Studio IDE 和 Visual Studio Code 扩展发布者。

Top Publisher 锁屏提醒的屏幕截图。

顶级发布者计划通过模范策略、质量、可靠性和支持向客户和市场承诺的发布者。 成为顶级发布者后,所有公开产品都会显示 Top Publisher 徽章。

排名靠前的发布者要求

市场中排名靠前的发布者计划旨在帮助评估或获取 Azure DevOps 扩展和自信集成。 顶级发布者徽章意味着发布者通过模范策略、质量、可靠性和支持向客户和市场展示承诺。 它适用于具有一个或多个全局 Azure DevOps 扩展或集成的发布者,不适用于 Visual Studio IDE 和 Visual Studio Code 扩展发布者。

市场在仔细查看发布者后,使用以下参数将锁屏提醒分配给发布者:

  • 隐私策略
  • 许可策略
  • 支持策略
  • 文档
  • 问答响应能力
  • 其产品/服务的评级和评论
  • 其产品/服务的活跃下载和安装数量
  • 管理 Azure DevOps 的至少一个公共扩展
  • 具有超过 5,000 次安装和超过 1,000 次活跃安装的公共扩展

从顶级发布者获取扩展时,可以期待及时的支持和良好的整体体验。 查看来自顶级发布者的产品/服务。

有关将策略添加到产品/服务的详细信息,请参阅 扩展清单

  1. 更新发布者个人资料。

    通过发布者个人资料,可以在一个位置展示所有产品/服务以及关键发布者相关信息。 若要提供配置文件中显示的信息,请执行以下步骤:

    a。 使用 https://marketplace.visualstudio.com/manage/publishers 在 Visual Studio Marketplace 中发布和管理产品/服务的帐户登录。

    b. 选择发布者,然后在“详细信息”选项卡中完成“关于你”部分。 有关Microsoft发布者的部分的屏幕截图。 c. 保存更改,然后选择“查看配置文件以查看其对使用者的显示方式。 您可以使用这个个人主页来推广您的产品或服务。

注意

此计划会认证发布者,而不是其扩展和集成的软件或安全性。 建议在评估发布者的产品/服务时查看 安全信息 。 如果你从顶级发布者获得了扩展,并且对你的体验不满意,请考虑先与发布者互动。

申请成为顶级发布者

  1. 使用在市场中发布和管理产品/服务的帐户登录到 市场管理门户
  2. 选择发布者并转到其 “顶级发布者 ”选项卡。让选项卡显示一个或多个全局 Azure DevOps(服务器/服务)扩展或集成。
  3. 如果满足之前列出的要求,并且是出版商的拥有者,则可以申请该项目。 申请后,会向市场团队发送一封电子邮件,以审查你的案例。 他们在 10 个工作日内回答后续步骤、澄清问题或授予徽章。

在授予徽章之前,团队可能会考虑其他参数,例如您的产品/服务的积极采纳率、安装量和启动次数,以及评分与评论。 Microsoft随时保留授予、拒绝或撤销顶级发布者徽章的权利。

发布者是顶级发布者后,其所有未来的更新和产品/服务必须满足之前列出的要求。

响应市场扩展评审

你可以响应客户在 Visual Studio Marketplace 中为扩展留下的评论。 如果具有以下权限之一,请在评审旁边查找并选择“ 回复 ”:所有者、创建者或参与者。

只能留下一个响应。 避免将评审用作支持论坛。 如果需要更多详细信息,请提供供审阅者联系的支持别名。 然后,可以在外部解决其问题,并使用解决方法更新回复。

发布者响应指南

使 Visual Studio Marketplace 保持开放、邀请、尊重和有用的位置,供客户查找、试用、安装和查看扩展。 沟通在保持健康社区方面发挥了重要作用。 为了帮助创建此环境,下面是发布者响应客户评论的指南。 深入思考客户交互,并反思市场正在尝试创建的客户体验精神。

  • 保留客户评论以供审阅。 仅使用 回复 回复回复审阅。
  • 尊重所有客户意见。 在没有辩论、批评或争论的情况下将评论视为反馈。
  • 确保响应增加价值,并与客户的评论相关。
  • 专注于精确解决问题或问题。 如果需要更多详细信息,请让客户通过电子邮件与你联系,而不是在评论中讨论。 解决问题时,请使用解决方法更新回复。 你可以编辑回复,就像客户可以编辑他们的评论一样。
  • 标记任何不适当的评论,如垃圾邮件、滥用或冒犯性内容,以供我们的评论。

请求取消评审

作为发布者,如果报告的问题是由于市场或基础平台,则可以呼吁取消评审。 如果问题有效,市场管理员将取消分级。 可以从 扩展中心页面上的“分级和审阅”部分提出上诉

取消发布扩展

如果不再需要在市场中提供免费扩展,可以取消发布免费扩展。

请考虑在以下情形中从市场中移除您的扩展:

  • 你开发了一个新的扩展,不再想要提供当前扩展。
  • 扩展有问题,并且你想要将其从市场中删除,直到解决问题。
  • 错误地将扩展发布为公共扩展。

必须满足某些条件才能取消发布或删除扩展:

操作 要求
取消发布 免费扩展 可能未发布。
删除 扩展必须安装 零(0) 才能删除。

重要

如果因法律或安全问题而必须删除扩展,请在开发者社区联系客户支持部门。 我们查看请求并手动删除扩展。

  1. 选择发布者页面上的扩展,然后在菜单中选择“取消发布”。

    你的扩展会立即从市场取消发布,并且新用户无法安装它。 扩展的评级和评论保持不变。

若要在市场中再次提供扩展,请从菜单中选择 “发布 ”。

如果扩展没有安装,可以选择将其完全从市场中删除。 为此,请从菜单中选择“ 删除 ”。 无法撤销此操作。

扩展报告平台

在 Visual Studio Marketplace 中提供扩展后,可以使用 “报表 ”功能。 使用此功能,可以跟踪和分析扩展的执行方式并采取所需作。 若要访问扩展中心,请浏览到 发布者页面 ,然后选择扩展详细信息页上的“ 报表 ”链接。

购置

可以在此选项卡中查看所选时间段内与购置相关的数据。

  • 总体购置的选定时间段内的聚合购置
  • 按扩展划分的聚合购置拆分下载 Azure DevOps 连接安装免费扩展
  • 按试用 Azure DevOps 连接的购买进行付费扩展的聚合购置拆分
  • Azure DevOps 和连接服务器的扩展页面视图获取情况的每日趋势
  • 从页面浏览到转化的转换率

对于付费扩展,购买和试用的所有交易详细信息都提供日期、组织名称、试用结束日期和数量。 可以使用 “联系人” 作与用户通信。 有关详细信息,请参阅本文后面的 “联系人” 部分。

卸载

可以查看以下统计信息:

  • 有多少组织卸载了您的扩展?
  • 卸载扩展的每日趋势
  • 卸载期间共享的详细反馈
  • 首要卸载原因

可以使用搜索文本和日期来分析和从详细反馈中获取更多见解。

对于付费扩展,可以使用 “联系人” 作与用户通信。 本文稍后提供的“联系人”部分提供了更多详细信息。

评级和评论

此选项卡提供以下信息:

  • 所选时间段的平均评分与总体评分
  • 按审阅者数计算的平均评分
  • 平均评级的每日趋势

详细信息部分提供事务视图中的所有评审和响应。

可以回复评论或编辑以前的响应,并更好地管理与扩展用户的互动。 如果报告的问题是由于市场或基础平台,还可以 呼吁 取消评级。 如果问题有效,我们将取消评级。

管理参与度

“问答”选项卡展示了扩展用户所有问题的快照,未回复的问题显示在顶部。 可以回复或编辑以前的响应,以便更好地管理与扩展用户的参与。

导出到 Excel

报表页中提供的所有数据元素也可以 XLS 格式下载,以帮助创建自己的自定义报表。

联系人​​

对于付费扩展,可以使用 “联系人” 作与用户通信。 此功能仅适用于在扩展上具有参与者+ 访问权限的发布者。

市场代理与用户进行第一次通信,因为我们的隐私策略不允许直接共享客户电子邮件地址。 只有选择加入通信的用户才能收到电子邮件。 发送沟通后,组织的最后联系日期会被更新。

重要

遵循有关促销和事务沟通的指导准则。 发现发布者正在发送促销通信或垃圾邮件给用户,将被列入阻止名单,并失去对其所有扩展程序的 联系人功能的访问权。

事务通信:传达继续使用扩展或服务所需的关键信息的电子邮件,例如:

  • 关键安全通知
  • 交易确认
  • 产品召回通知
  • 特定反馈请求
  • 服务停用通知

促销电子邮件:用于营销扩展、产品、服务、网站或活动的电子邮件,例如:

  • 活动或网络广播的邀请
  • 有关新营销或合作伙伴计划的信息
  • 提供获取增值内容的机会
  • 包含促销内容的新闻稿

有关详细信息,请参阅 市场发布者协议

术语 DESCRIPTION
页面浏览量 扩展详细信息页面的浏览总次数。 重复观看次数会被计入。
Azure DevOps 服务安装 安装扩展的组织总数。 在同一组织中,重复安装会被计数。
Azure DevOps Server 安装 安装扩展的集合总数。 对同一集合的多次安装会被计数。 断开连接的服务器数据不可用。