runner, client, core 작업을 루트에서 반복 실행할 수 있도록 Makefile 위임 target을 추가한다. 루트 README도 monorepo 구조와 portable 서브프로젝트 링크 기준으로 정리한다.
57 lines
1.6 KiB
Markdown
57 lines
1.6 KiB
Markdown
# OTO Monorepo
|
|
|
|
YAML 기반 CI/CD 파이프라인 자동화 도구 OTO의 Monorepo 프로젝트입니다.
|
|
독립 Control Plane 분리 마이그레이션을 통해 Runner, Client, Core Service로 컴포넌트를 분리하여 관리합니다.
|
|
|
|
## 프로젝트 구조
|
|
|
|
```
|
|
/
|
|
├── apps/
|
|
│ ├── runner/ # Dart CLI 기반 OTO Runner (파이프라인 실행 엔진)
|
|
│ └── client/ # Flutter 기반 OTO Console Client (독립 제어 콘솔)
|
|
├── services/
|
|
│ └── core/ # Go 기반 OTO Control Plane Server (Runner Registry & Bootstrap)
|
|
└── Makefile # Monorepo 작업을 위한 루트 진입점 Helper
|
|
```
|
|
|
|
## 시작하기
|
|
|
|
루트 `Makefile`을 통해 모든 서브프로젝트의 의존성 설치, 분석, 테스트 작업을 통합 관리할 수 있습니다.
|
|
|
|
### 의존성 설치 (Setup)
|
|
|
|
각 앱/서비스의 패키지 및 모듈 의존성을 설치합니다.
|
|
```bash
|
|
make setup
|
|
```
|
|
|
|
### 코드 분석 및 린트 (Analyze)
|
|
|
|
서브프로젝트별 정적 분석을 수행합니다.
|
|
```bash
|
|
make runner-analyze
|
|
make client-analyze
|
|
```
|
|
|
|
### 테스트 실행 (Test)
|
|
|
|
#### 개별 서브프로젝트 테스트
|
|
```bash
|
|
make runner-test
|
|
make client-test
|
|
make core-test
|
|
```
|
|
|
|
#### 통합 테스트 실행 (전체 서브프로젝트)
|
|
```bash
|
|
make test
|
|
```
|
|
|
|
## 서브프로젝트 상세 안내
|
|
|
|
각 서브프로젝트의 내부 아키텍처 및 상세 사용 방법은 하위 경로의 README 문서를 참조하세요:
|
|
- [OTO Runner README](apps/runner/README.md)
|
|
- [OTO Client README](apps/client/README.md)
|
|
- OTO Core Server: [services/core/](services/core/)
|
|
|