5.5. CodeReady Workspaces での Visual Studio Code 拡張機能のテスト
Visual Studio Code (VS Code) 拡張機能はワークスペースで機能します。VS Code 拡張機能は、Che-Theia エディターコンテナー、またはその前提条件を満たした独自の分離され、事前に設定されたコンテナーで実行されます。
本セクションでは、ワークスペースを使用して CodeReady Workspaces で VS Code 拡張をテストする方法と、VS Code 拡張の互換性を確認し、特定の API が利用可能かどうかを確認する方法を説明します。
extension-hosting サイドカーコンテナーおよび devfile での拡張機能の使用は任意です。
5.5.1. GitHub gist を使用した VS Code 拡張機能のテスト リンクのコピーリンクがクリップボードにコピーされました!
各ワークスペースには独自のプラグインセットを使用できます。プラグインの一覧およびクローンを作成するプロジェクトの一覧は devfile.yaml ファイルに定義されます。
たとえば、Red Hat CodeReady Workspaces ダッシュボードから AsciiDoc プラグインを有効にするには、以下のスニペットを devfile に追加します。
components: - id: joaopinto/vscode-asciidoctor/latest type: chePlugin
components:
- id: joaopinto/vscode-asciidoctor/latest
type: chePlugin
デフォルトのプラグインレジストリーにないプラグインを追加するには、カスタムプラグインレジストリーをビルドします。「レジストリーのカスタマイズ」または 「GitHub および gist サービスの使用」を参照してください。
前提条件
- CodeReady Workspaces の実行中のインスタンス。CodeReady Workspaces のインスタンスをインストールするには、「CodeReady Workspaces のインストール」を参照してください。
- GitHub アカウント。
手順
-
gist の Web
ページに移動し、Red Hat CodeReady Workspaces の Try Bracket Pair Colorizer 拡張と(ブラケット Pair Colorizer は一般的な VS Code 拡張機能です。)、Example VS Code 拡張機能でREADME.mdファイルを作成します。 - ボタンをクリックします。
ブラウザーのナビゲーションバーの URL を使用して、gist リポジトリーのクローンを作成します。
git clone https://gist.github.com/<your-github-username>/<gist-id>
$ git clone https://gist.github.com/<your-github-username>/<gist-id>Copy to Clipboard Copied! Toggle word wrap Toggle overflow git cloneコマンドの出力例Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 各 gist には固有の ID があります。
ディレクトリーを変更します。
cd <gist-directory-name>
$ cd <gist-directory-name>1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- gist ID に一致するディレクトリー名。
- VS Code marketplace または GitHub ページからプラグインをダウンロードし、プラグインファイルをクローン作成されたディレクトリーに保存します。
クローン作成されたディレクトリーに
plugin.yamlファイルを作成して、このプラグインの定義を追加します。バイナリーファイルの拡張を参照するplugin.yamlファイルの例Copy to Clipboard Copied! Toggle word wrap Toggle overflow メモリー制限およびボリュームを定義します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow を作成します。plugin.yaml ファイルを参照する devfile.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- その他の devfile 定義も使用できます。この devfile の重要な情報は、この外部コンポーネントを定義する行になります。これは、外部参照がデフォルトのプラグインレジストリーの定義を参照する ID ではなく、プラグインを定義することを意味します。
現在の Git ディレクトリーに 4 つのファイルがあることを確認します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ファイルをコミットする前に、事前コミットフックを追加して
{{REPOSITORY}}変数を公開されている外部 raw gist リンクに更新します。以下の内容で.git/hooks/pre-commitファイルを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow フックは
{{REPOSITORY}}マクロを置き換え、外部の未加工リンクを gist に追加します。スクリプトを実行可能にします。
chmod u+x .git/hooks/pre-commit
$ chmod u+x .git/hooks/pre-commitCopy to Clipboard Copied! Toggle word wrap Toggle overflow
ファイルをコミットし、プッシュします。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow gist の Web サイトにアクセスし、すべてのリンクに正しい公開 URL
があり、{{REPOSITORY}}変数が含まれていないことを確認します。devfile に到達するには、以下を実行します。echo "$(git config --get remote.origin.url)/raw/devfile.yaml"
$ echo "$(git config --get remote.origin.url)/raw/devfile.yaml"Copy to Clipboard Copied! Toggle word wrap Toggle overflow または
echo "https://<che-server>/#$(git config --get remote.origin.url)/raw/devfile.yaml"
$ echo "https://<che-server>/#$(git config --get remote.origin.url)/raw/devfile.yaml"Copy to Clipboard Copied! Toggle word wrap Toggle overflow