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

Actions 모듈

원문 보기 위키 갱신

The actions module (@backstage/cli-module-actions)은 Backstage UI를 거치지 않고 명령줄에서 Backstage 작업을 발견하고 실행할 수 있게 해줍니다.

출처: 문서

본문

The actions module (@backstage/cli-module-actions)은 Backstage UI를 거치지 않고 명령줄에서 Backstage 작업(action)을 발견하고 실행할 수 있게 해줍니다.

Backstage 플러그인이 노출할 수 있는 작업 목록은 Well-Known Actions 문서를 참조하세요.

전제 조건 (Prerequisites)

actions 명령을 사용하기 전에 auth login으로 Backstage 인스턴스에 인증해야 합니다. actions 명령은 저장된 자격 증명을 사용해 백엔드와 통신합니다.

모든 actions 명령은 기본적으로 선택된 인스턴스에 대해 작동합니다. 여러 인증 인스턴스가 있다면 --instance 플래그와 인스턴스 이름을 사용해 특정 인스턴스를 대상으로 지정하세요. 인스턴스 이름이 작동하는 방식에 대한 자세한 내용은 Instance Names를 참조하세요.

플러그인 소스 (Plugin sources)

actions 모듈은 작업을 발견할 백엔드 플러그인을 알아야 합니다. 이를 플러그인 소스라고 하며 인증된 인스턴스의 메타데이터로 저장됩니다. 작업을 나열하거나 실행하기 전에 actions sources 명령으로 플러그인 소스를 관리하세요.

actions list

구성된 모든 플러그인 소스에서 사용 가능한 작업을 나열합니다.

Usage: backstage-cli actions list [options]List available actions from configured plugin sourcesOptions:  --instance <name>    Instance name to use (defaults to the selected instance)

플러그인 소스가 구성되지 않은 경우 명령은 actions sources add로 소스를 추가하라는 힌트를 출력합니다.

예시 (Examples)

사용 가능한 모든 작업 나열:

yarn backstage-cli actions list

이름이 지정된 인스턴스에서 작업 나열:

yarn backstage-cli actions list --instance production

actions execute

작업을 실행합니다. 작업 ID는 <pluginId>:<actionName> 형식을 따릅니다.

Usage: backstage-cli actions execute [options] <action-id>Execute an actionOptions:  --instance <name>    Instance name to use (defaults to the selected instance)

--instance 플래그 외에도 명령은 작업의 입력 JSON Schema에서 플래그를 동적으로 생성합니다. 스키마의 각 속성은 자동 타입 매핑과 함께 CLI 플래그가 됩니다.

  • string 속성은 String 플래그가 됩니다.
  • number 및 integer 속성은 Number 플래그가 됩니다.
  • boolean 속성은 Boolean 플래그가 됩니다.
  • 복합 타입(객체, 배열, 유니언)은 JSON 입력을 받아들이는 String 플래그가 됩니다.

작업 ID와 함께 --help를 사용하면 렌더링된 설명을 포함해 해당 작업에 사용 가능한 전체 플래그 집합을 볼 수 있습니다.

예시 (Examples)

특정 작업에 대한 도움말(동적으로 생성된 플래그 포함) 표시:

yarn backstage-cli actions execute my-plugin:my-action --help

플래그로 작업 실행:

yarn backstage-cli actions execute my-plugin:create-resource --name my-resource --count 3

복합 입력을 JSON 문자열로 전달:

yarn backstage-cli actions execute my-plugin:configure --options '{"timeout": 30, "retries": 3}'

actions sources add

작업 발견을 위해 하나 이상의 플러그인 소스를 추가합니다. 플러그인 소스는 인증된 인스턴스의 메타데이터로 저장됩니다.

Usage: backstage-cli actions sources add <plugin-ids...>Add a plugin source for action discovery

플러그인 소스가 이미 구성되어 있으면 경고와 함께 건너뜁니다.

예시 (Examples)

단일 플러그인 소스 추가:

yarn backstage-cli actions sources add scaffolder

여러 플러그인 소스를 한 번에 추가:

yarn backstage-cli actions sources add scaffolder catalog

actions sources list

현재 인스턴스에 대해 구성된 모든 플러그인 소스를 나열합니다.

Usage: backstage-cli actions sources listList configured plugin sources

예시 (Examples)

yarn backstage-cli actions sources list

actions sources remove

현재 인스턴스에서 하나 이상의 플러그인 소스를 제거합니다.

Usage: backstage-cli actions sources remove <plugin-ids...>Remove a plugin source

플러그인 소스가 구성되어 있지 않으면 경고와 함께 건너뜁니다.

예시 (Examples)

단일 플러그인 소스 제거:

yarn backstage-cli actions sources remove scaffolder

여러 플러그인 소스를 한 번에 제거:

yarn backstage-cli actions sources remove scaffolder catalog

워크플로 예시 (Workflow example)

일반적인 워크플로는 다음과 같습니다.

# 1. Log in to your Backstage instanceyarn backstage-cli auth login --backendUrl https://backstage.example.com# 2. Add plugin sources to discover actions fromyarn backstage-cli actions sources add scaffolder# 3. List available actionsyarn backstage-cli actions list# 4. Get help for a specific actionyarn backstage-cli actions execute scaffolder:create-component --help# 5. Execute the actionyarn backstage-cli actions execute scaffolder:create-component --name my-service --owner team-a

더 알아보기 (Learn more)