7.5. 動的プラグインの例
例を実行する前に、動的プラグイン開発 の手順に従って、プラグインが機能していることを確認してください。
7.5.1. Pod ページへのタブの追加 リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform Web コンソールに対して行うことができるさまざまなカスタマイズがあります。以下の手順では、サンプルとしてプラグインにタブを Pod details ページに追加します。
OpenShift Container Platform Web コンソールは、ログインしているクラスターに接続されているコンテナーで実行されます。独自のプラグインを作成する前にプラグインをテストするための情報は、「動的プラグインの開発」を参照してください。
手順
新しいタブでプラグインを作成するためのテンプレートを含む
console-plugin-templateリポジトリーにアクセスします。重要カスタムプラグインコードは、Red Hat ではサポートされていません。プラグインで利用できるのは、共同コミュニティーのサポート のみです。
-
Use this template
Create new repository をクリックして、テンプレートの GitHub リポジトリーを作成します。 - プラグインの名前で新しいリポジトリーの名前を変更します。
- コードを編集できるように、新しいリポジトリーのクローンをローカルマシンに作成します。
package.jsonファイルを編集して、プラグインのメタデータをconsolePlugin宣言に追加します。以下に例を示します。"consolePlugin": { "name": "my-plugin", "version": "0.0.1", "displayName": "My Plugin", "description": "Enjoy this shiny, new console plugin!", "exposedModules": { "ExamplePage": "./components/ExamplePage" }, "dependencies": { "@console/pluginAPI": "/*" } }各項目の説明:
consolePlugin.name.my-plugin- プラグインの名前を更新します。
consolePlugin.version.0.0.1- バージョンを更新します。
consolePlugin.displayName.My Plugin- プラグインの表示名を更新します。
consolePlugin.description.このピカピカの新しいコンソールプラグインをお楽しみください!- プラグインの概要を使用して、説明を更新します。
console-extensions.jsonファイルに以下を追加します。{ "type": "console.tab/horizontalNav", "properties": { "page": { "name": "Example Tab", "href": "example" }, "model": { "group": "core", "version": "v1", "kind": "Pod" }, "component": { "$codeRef": "ExampleTab" } } }package.jsonファイルを編集して以下の変更を追加します。"exposedModules": { "ExamplePage": "./components/ExamplePage", "ExampleTab": "./components/ExampleTab" }新しいファイル
src/components/ExampleTab.tsxを作成し、以下のスクリプトを追加することで、Pod ページの新規カスタムタブに表示されるメッセージを作成します。import * as React from 'react'; export default function ExampleTab() { return ( <p>This is a custom tab added to a resource using a dynamic plugin.</p> ); }プラグインをクラスターにデプロイするには、プラグインの名前を Helm リリース名として Helm チャートを、新しい namespace または
-nコマンドラインオプションで指定された既存の namespace にインストールします。次のコマンドを使用して、plugin.imageパラメーター内のイメージの場所を指定します。$ helm upgrade -i my-plugin charts/openshift-console-plugin -n my-plugin-namespace --create-namespace --set plugin.image=my-plugin-image-location注記クラスターへのプラグインのデプロイの詳細は、「クラスターへのプラグインのデプロイ」を参照してください。
検証
- Pod ページに移動し、追加されたタブを表示します。