第4章 IDE 拡張機能の管理


IDE は拡張機能またはプラグインを使用して機能を拡張します。拡張機能を管理するメカニズムは IDE によって異なります。

4.1. Microsoft Visual Studio Code の拡張機能 - オープンソース

拡張機能を管理するために、この IDE は次の Open VSX レジストリーインスタンスのいずれかを使用します。

  • エアギャップ環境、オフライン環境、およびプロキシー制限環境をサポートする OpenShift Dev Spaces の プラグインレジストリー Pod で実行される Open VSX レジストリーの組み込みインスタンス。組み込みの Open VSX レジストリーには、open-vsx.org で公開されている拡張機能のサブセットのみが含まれています。このサブセットは カスタマイズ可能 です。
  • インターネット経由でアクセスされるパブリック open-vsx.org レジストリー。
  • OpenShift Dev Spaces ワークスペース Pod からアクセスできるネットワーク上にデプロイされるスタンドアロンの Open VSX レジストリーインスタンス。

デフォルトは、Open VSX レジストリーの埋め込みインスタンスです。

4.1.1. Open VSX レジストリーインスタンスの選択

デフォルトは、Open VSX レジストリーの埋め込みインスタンスです。

デフォルトの Open VSX レジストリーインスタンスが必要なものではない場合は、次のいずれかのインスタンスを選択できます。

  • インターネットへのアクセスを必要とする、https://open-vsx.org の Open VSX レジストリーインスタンス。
  • OpenShift Dev Spaces ワークスペース Pod からアクセスできるネットワーク上にデプロイされるスタンドアロンの Open VSX レジストリーインスタンス。

手順

  • 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 レジストリーインスタンスを選択するには、openVSXURL: '' を使用します。含まれる拡張機能のリストをカスタマイズ できます。
    • また、その URL が組織のクラスター内からアクセス可能であり、プロキシーによってブロックされていない場合は、スタンドアロンの Open VSX レジストリーインスタンスの URL で openVSXURL を指すこともできます。

4.1.2. 組み込みの Open VSX レジストリーインスタンスでの拡張機能の追加または削除

埋め込まれた Open VSX レジストリーインスタンスの拡張機能を追加または削除できます。これにより、組織のワークスペースで使用できる Open VSX レジストリーのカスタムビルドが作成されます。

ヒント

OpenShift Dev Spaces の更新後に最新のセキュリティー修正を取得するには、最新のタグまたは SHA に基づいてコンテナーを再構築します。

手順

  1. 選択した各拡張機能の発行元と名前を取得します。

    1. Open VSX レジストリー Web サイト で拡張機能を見つけ、拡張機能のリストページの URL をコピーします。
    2. コピーした 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 チームに 問題を報告する ことを検討してください。

  2. プラグインレジストリーリポジトリー をダウンロードするか、フォークしてクローンします。
  3. 追加または削除する必要がある拡張機能ごと に、openvsx-sync.json ファイル を編集します。

    • 拡張機能を追加するには、発行元と拡張機能の名前を openvsx-sync.json ファイルに追加します。
    • 拡張機能を削除するには、openvsx-sync.json ファイルから発行元と拡張機能の名前を削除します。
    • 次の JSON 構文を使用します。

          {
              "id": "<publisher>.<extension>"
          }
      ヒント
      • open-vsx.org の最新の拡張バージョンがデフォルトです。または、新しい行に "version": "<extension_version>" を追加して、バージョンを指定することもできます。
      • クローズドソースの拡張機能または社内の内部使用のみを目的として開発された拡張機能がある場合は、カスタムプラグインレジストリーコンテナーにアクセスできる URL を使用して、.vsix ファイルから直接、拡張機能を追加できます。

            {
                "id": "<publisher>.<extension>",
                "download": "<url_to_download_vsix_file>",
                "version": "<extension_version>"
            }
      • リソースを使用する前に、Microsoft Visual Studio Marketplace利用規約 をお読みください。
  4. プラグインレジストリーコンテナーイメージをビルドし、quay.io などのコンテナーレジストリーに公開します。

    1. $ ./build.sh -o <username> -r quay.io -t custom
    2. $ podman push quay.io/<username/plugin_registry:custom>
  5. イメージ (quay.io など) を指すように、社内のクラスター内の CheCluster カスタムリソースを編集し、変更を保存します。

    spec:
      components:
        pluginRegistry:
          deployment:
            containers:
              - image: quay.io/<username/plugin_registry:custom>
          openVSXURL: ''

検証

  1. plugin-registry Pod が再始動して実行中であることを確認します。
  2. ワークスペースを再起動し、ワークスペース IDE の 拡張機能 ビューで使用可能な拡張機能を確認します。
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.