第 4 章 管理 IDE 扩展


IDE 使用扩展或插件来扩展其功能,以及管理 IDE 之间扩展的机制。

4.1. Microsoft Visual Studio Code 扩展 - 开源

要管理扩展,此 IDE 使用以下 Open VSX registry 实例之一:

  • public, primary open-vsx.org registry。
  • 在 OpenShift Dev Spaces 的 plugin-registry pod 中运行的 Open VSX registry 的嵌入式实例,以支持 air-gapped、offline 和 proxy-restricted 环境。嵌入式 Open VSX 注册表仅包含在 open-vsx.org 上发布的扩展的子集。可以自定义此子集。
  • 独立 Open VSX registry 实例,部署到可从 OpenShift Dev Spaces 工作区 pod 访问的网络上。

4.1.1. 选择 Open VSX registry 实例

如果从您机构的集群中解析,位于 https://open-vsx.org 的 Open VSX 注册表是默认设置。如果没有,则 OpenShift Dev Spaces plugin-registry pod 中嵌入的 Open VSX registry 是默认值。

如果默认的 Open VSX registry 实例不是您需要的,您可以选择另一个 Open VSX registry 实例,如下所示:

流程

  • 编辑 CheCluster 自定义资源中的 openVSXURL 值:

    spec:
      components:
        pluginRegistry:
          openVSXURL: "<url_of_an_open_vsx_registry_instance>"
    提示
    • 默认的 openVSXURL 值是 https://open-vsx.org
    • 要在 plugin-registry pod 中选择嵌入的 Open VSX registry 实例,请使用 openVSXURL: ''。有关如何自定义所含扩展的详情,请查看下一部分。
    • 如果从您组织的集群内部访问其 URL,您也可以将 openVSXURL 指向独立 Open VSX registry 实例的 URL,且代理不会阻断它。

4.1.2. 在嵌入式 Open VSX registry 实例中添加或删除扩展

您可以在 OpenShift Dev Spaces 部署的嵌入式 Open VSX registry 实例中添加或删除扩展,以支持离线和代理的环境。

这将创建 Open VSX 注册表的自定义构建,可在您的组织的工作区中使用。

提示

要在 OpenShift Dev Spaces 更新后获取最新的安全修复,请根据 latest 标签或 SHA 重建容器。

流程

  1. 下载或分叉,并克隆 插件 registry 存储库
  2. 对于需要添加或删除的每个扩展,编辑 openvsx-sync.json 文件

    • 如果扩展在 open-vsx.org 上发布,您可以使用 < published_by& gt; 格式添加扩展 ID。< unique_identifier >。您可以在 open-vsx.org 上找到有关扩展列表页的 id 详情。

          {
              "id": "<published_by>.<unique_identifier>"
          }
      提示

      open-vsx.org 上的最新扩展版本是默认值。或者,您可以在 新行中添加 "<extension_version> version": " 以指定版本。

    • 如果扩展仅适用于 Microsoft Visual Studio Marketplace,但不是 Open VSX,您可以要求扩展发布者根据 这些说明open-vsx.org 上发布。https://github.com/marketplace/actions/publish-vs-code-extension

      提示
      • 如果扩展发布者不可用,或无法将扩展发布到 open-vsx.org,如果没有与扩展等效的 Open VSX,请考虑 Open VSX 团队报告问题。
      • 如果您有一个闭源扩展或者只为公司内部使用开发的扩展,您可以使用自定义插件 registry 容器访问的 URL 直接从 .vsix 文件添加扩展:

            {
                "id": "<published_by>.<unique_identifier>",
                "download": "<url_to_download_vsix_file>",
                "version": "<extension_version>"
            }
      警告

      在使用其资源之前,请阅读 使用 Microsoft Visual Studio Marketplace 的使用条款

    • 您可以通过从 openvsx-sync.json 文件中删除扩展。
  3. 构建插件 registry 容器镜像,并将其发布到类似 quay.io 的容器 registry:

    1. $ ./build.sh -o <username> -r quay.io -t custom
    2. $ podman push quay.io/<username/plugin_registry:custom>
  4. 编辑机构的集群中的 CheCluster 自定义资源以指向镜像(例如,在 quay.io上),然后保存更改:

    spec:
      components:
        pluginRegistry:
          deployment:
            containers:
              - image: quay.io/<username/plugin_registry:custom>
          openVSXURL: ''
  5. 检查 plugin-registry Pod 是否已重启并正在运行。
  6. 重新启动工作区,并检查工作区 IDE 的 Extensions 视图中的可用扩展。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.