第 4 章 管理 IDE 扩展
IDE 使用扩展或插件来扩展其功能,管理扩展的机制因 IDE 而异。
4.1. Microsoft Visual Studio Code 的扩展 - 开源
要管理扩展,这个 IDE 使用以下 Open VSX registry 实例之一:
-
在 OpenShift Dev Spaces 的
plugin-registry
pod 中运行 Open VSX registry 的嵌入式实例,以支持 air-gapped、off 和 proxy-restricted 环境。嵌入式 Open VSX registry 仅包含 open-vsx.org 上发布的扩展子集。此子集 可自定义。 - 通过互联网访问的公共 open-vsx.org 注册表。
- 单机 Open VSX registry 实例,部署到可从 OpenShift Dev Spaces 工作区 pod 访问的网络中。
默认为 Open VSX 注册表的嵌入式实例。
4.1.1. 选择 Open VSX registry 实例
默认为 Open VSX 注册表的嵌入式实例。
如果默认的 Open VSX registry 实例不是您需要的,您可以选择以下实例之一:
-
https://open-vsx.org
上的 Open VSX registry 实例需要访问互联网。 - 单机 Open VSX registry 实例,部署到可从 OpenShift Dev Spaces 工作区 pod 访问的网络中。
流程
编辑
CheCluster
自定义资源中的openVSXURL
值:spec: components: pluginRegistry: openVSXURL: "<url_of_an_open_vsx_registry_instance>" 1
- 1
- 例如:
openVSXURL: "https://open-vsx.org"
。
提示-
要在
plugin-registry
pod 中选择嵌入的 Open VSX registry 实例,请使用openVSXURL: ''
。您可以自定义包含的扩展列表。 -
如果可从您的机构集群中的 URL 访问其 URL,则您还可以将
openVSXURL
指向独立 Open VSX registry 实例的 URL,而不是被代理阻止。
4.1.2. 在嵌入式 Open VSX registry 实例中添加或删除扩展
您可以在嵌入式 Open VSX registry 实例中添加或删除扩展。这将生成可在您组织的工作区中使用的 Open VSX 注册表的自定义构建。
要在 OpenShift Dev Spaces 更新后获取最新的安全修复,请根据最新的标签或 SHA 重建容器。
流程
获取每个所选扩展名的发布者和扩展名称:
- 在 Open VSX registry 网站 中找到扩展,并复制扩展列表页面的 URL。
从复制的 URL 中提取 <publisher > 和名称 <extension> :
https://www.open-vsx.org/extension/<publisher>/<extension>
提示如果扩展仅可用于 Microsoft Visual Studio Marketplace,但不适用于 Open VSX,您可以要求扩展发布发布者根据以下 说明在 open-vsx.org 上发布它,并可能使用此 GitHub 操作。
如果扩展发布者不可用或不希望将扩展发布到 open-vsx.org,且没有与扩展相对应的 Open VSX,考虑使用向 Open VSX 团队报告问题。
- 下载或分叉并克隆 插件 registry 存储库。
对于需要添加或删除的每个扩展,请编辑
openvsx-sync.json
文件 :-
要添加扩展,请在
openvsx-sync.json
文件中添加发布程序和扩展名称。 -
要删除扩展,请从
openvsx-sync.json
文件中删除发布程序和扩展名称。 使用以下 JSON 语法:
{ "id": "<publisher>.<extension>" }
提示-
open-vsx.org 上的最新扩展版本是默认值。或者,您可以在新
行中添加 "<extension_version>
version": " " 以指定版本。 如果您有一个 down-source 扩展或只为机构中内部使用开发的扩展,您可以使用自定义插件 registry 容器可访问的 URL 直接从
.vsix
文件添加扩展:{ "id": "<publisher>.<extension>", "download": "<url_to_download_vsix_file>", "version": "<extension_version>" }
- 在使用其资源前,请阅读 Microsoft Visual Studio Marketplace 的 使用条款。
-
open-vsx.org 上的最新扩展版本是默认值。或者,您可以在新
-
要添加扩展,请在
构建插件 registry 容器镜像并将其发布到类似 quay.io 的容器 registry:
$ ./build.sh -o <username> -r quay.io -t custom
$ podman push quay.io/<username/plugin_registry:custom>
编辑您机构集群中的
CheCluster
自定义资源以指向镜像(例如在 quay.io上),并保存更改:spec: components: pluginRegistry: deployment: containers: - image: quay.io/<username/plugin_registry:custom> openVSXURL: ''
验证
-
检查
plugin-registry
pod 是否已重启并正在运行。 - 重启工作区,并在工作区 IDE 的 Extensions 视图中检查可用的扩展。