본문 바로가기
WIKI 기술 지식 베이스

플러그인 설치하기

원문 보기 위키 갱신

플러그인 설치하기 (Installing Plugins)

프론트엔드 플러그인은 앱 패키지의 의존성으로 추가해 Backstage 앱에 설치해요. 대부분의 경우 이것만 하면 돼요. 앱이 플러그인을 자동으로 발견하고 설치하기 때문이에요.

출처: 문서

본문

프론트엔드 플러그인은 앱 패키지의 의존성으로 추가해 Backstage 앱에 설치해요. 대부분의 경우 이것만 하면 돼요. 앱이 플러그인을 자동으로 발견하고 설치하기 때문이에요.

플러그인 패키지 설치하기

플러그인을 설치하려면 앱 패키지에 의존성으로 추가하세요. 예를 들어 catalog 플러그인을 설치하려면:

Backstage 루트 디렉터리에서

yarn --cwd packages/app add @backstage/plugin-catalog

앱이 기능 검색(feature discovery)으로 설정되어 있다면 플러그인이 자동으로 감지되어 앱에 설치돼요. 추가 코드 변경은 필요 없어요.

기능 검색 (Feature discovery)

기능 검색을 사용하면 앱이 앱 패키지의 의존성에서 플러그인을 자동으로 발견하고 설치할 수 있어요. 이는 app-config.yaml에서 app.packages를 all로 설정해 활성화해요.

app-config.yaml

app:  packages: all

이것이 권장 설정이며 모든 새 Backstage 앱의 기본값이에요. 이 기능이 활성화되면 앱 패키지의 의존성으로 추가된 모든 플러그인이 자동으로 발견되고 설치돼요. include 또는 exclude 필터를 사용해 어떤 패키지를 발견할지 제어할 수 있어요.

app-config.yaml

app:  packages:    include:      - '@backstage/plugin-catalog'      - '@backstage/plugin-scaffolder'

app-config.yaml

app:  packages:    exclude:      - '@backstage/plugin-catalog'

기능 검색을 사용하려면 앱이 @backstage/cli로 빌드되어야 하며, 이는 모든 Backstage 앱의 기본 설정이에요. 코드에서 직접 설치하는 패키지는 제외할 필요가 없다는 점에 유의하세요. 플러그인 인스턴스는 앱에 의해 중복 제거(deduplicated)되기 때문이에요.

기능 검색이 내부에서 어떻게 작동하는지에 대한 자세한 내용은 기능 검색 아키텍처 문서를 참고하세요.

수동 설치 (Manual installation)

앱에 기능 검색이 활성화되어 있지 않거나 플러그인 설치에 대한 더 많은 제어가 필요하다면 플러그인을 수동으로 설치할 수 있어요. 이는 플러그인을 import하고 createApp에 전달해 수행해요.

packages/app/src/App.tsx

import { createApp } from '@backstage/frontend-defaults';import catalogPlugin from '@backstage/plugin-catalog/alpha';const app = createApp({  features: [catalogPlugin],});export default app.createRoot();

라우트 우선순위를 커스터마이즈할 때처럼 플러그인 순서를 제어해야 한다면 수동 설치가 필요할 수도 있어요. 수동으로 설치된 플러그인은 자동으로 발견된 플러그인과 중복 제거되므로, 충돌을 일으키지 않고 플러그인을 수동으로 그리고 기능 검색을 통해 안전하게 설치할 수 있어요.

아직 새 프론트엔드 시스템을 지원하지 않는 서드파티 플러그인을 사용해야 한다면, @backstage/core-compat-api의 변환 유틸리티를 사용해 감쌀 수 있어요. 자세한 내용은 서드파티 플러그인 변환하기를 참고하세요.

설치된 플러그인 구성하기

플러그인이 설치되면 app-config.yaml의 app.extensions 섹션을 통해 그 확장을 구성할 수 있어요. 자세한 내용은 확장 구성하기를 참고하세요.

더 알아보기 (Learn more)