7장. 동적 플러그인
7.1. 동적 플러그인 개요
7.1.1. 동적 플러그인 정보
동적 플러그인을 사용하면 런타임 시 사용자 정의 페이지 및 기타 확장을 인터페이스에 추가할 수 있습니다. ConsolePlugin
사용자 정의 리소스는 콘솔에 플러그인을 등록하고 클러스터 관리자는 console-operator
구성에서 플러그인을 활성화합니다.
7.1.2. 주요 기능
동적 플러그인을 사용하면 OpenShift Container Platform 환경에 대해 다음과 같은 사용자 정의를 수행할 수 있습니다.
- 사용자 지정 페이지를 추가합니다.
- 관리자 및 개발자 이외의 화면을 추가합니다.
- 탐색 항목을 추가합니다.
- 리소스 페이지에 탭과 작업을 추가합니다.
7.1.3. 일반 지침
플러그인을 생성할 때 다음 일반 지침을 따르십시오.
-
Node.js
및yarn
은 플러그인을 빌드하고 실행하는 데 필요합니다. -
충돌을 방지하려면 CSS 클래스 이름을 플러그인 이름으로 접두사로 지정합니다. 예를 들어
my-plugin__heading
및my-plugin_\_icon
. - 다른 콘솔 페이지와 일관된 모양, 느낌 및 동작을 유지 관리합니다.
플러그인을 생성할 때 react-i18next 현지화 지침을 따르십시오. 다음 예제에서와 같이
useTranslation
후크를 사용할 수 있습니다.conster Header: React.FC = () => { const { t } = useTranslation('plugin__console-demo-plugin'); return <h1>{t('Hello, World!')}</h1>; };
- 요소 선택기와 같은 플러그인 구성 요소 외부의 DestinationRule에 영향을 줄 수 있는 선택기를 사용하지 마십시오. 이는 API가 아니며 변경될 수 있습니다. 이를 사용하면 플러그인이 손상될 수 있습니다. 플러그인 구성 요소 외부에서 4.6.1에 영향을 줄 수 있는 요소 선택기와 같은 선택기를 사용하지 마십시오.
PatternFly 지침
플러그인을 생성할 때 PatternFly 사용에 대한 다음 지침을 따르십시오.
- PatternFly 구성 요소 및 PatternFly CSS 변수를 사용합니다. Core PatternFly 구성 요소는 SDK를 통해 사용할 수 있습니다. PatternFly 구성 요소 및 변수를 사용하면 플러그인이 향후 콘솔 버전에서 일관성을 유지하는 데 도움이 됩니다.
- PatternFly의 접근성 기본 사항에 따라 플러그인에 액세스할 수 있도록 합니다.
- Bootstrap 또는 Tailwind와 같은 다른 CSS 라이브러리는 사용하지 마십시오. PatternFly와 충돌할 수 있으며 콘솔 모양과 일치하지 않습니다.