- 이 저장소는 "기억"이 아닌 "기록"을 기반으로 시스템을 재구성하는 운영 원칙을 담습니다.
- 사람과 AI가 동일한 기준으로 환경/설정/배포를 재현하는 것을 목표로 합니다.
- 선언형(Declarative): 원하는 상태를 코드/설정으로 명시
- 버전관리(Versioned): 모든 변경은 Git 이력으로 추적
- 재현가능(Reproducible): 동일한 저장소 상태로 환경 재구성 가능
- 자동화(Automatable): 반복 작업은 스크립트/CI로 실행
- 비밀분리(Secret Separation): 민감정보는 코드와 분리
/Users/llsg822/dev/demo/README.md: 프로젝트 진입점/Users/llsg822/dev/demo/RECORDED_CONFIGURATION_GUIDE.md: 상세 운영 원칙 및 선택지/Users/llsg822/dev/demo/docs/PREREQUISITES.md: 환경 재현을 위한 필수 도구/버전
- 새 변경을 시작하기 전에
RECORDED_CONFIGURATION_GUIDE.md확인 TBD항목이 있으면 먼저 도구/방식 결정- 구현 후 문서와 CI 규칙을 함께 업데이트
/Users/llsg822/dev/demo/apps/backend: Kotlin Spring Boot + Flyway + OpenAPI-first/Users/llsg822/dev/demo/apps/frontend: React + TypeScript + pnpm + Playwright/Users/llsg822/dev/demo/infra/terraform: Terraform baseline/Users/llsg822/dev/demo/infra/helm/demo-app: Helm chart skeleton/Users/llsg822/dev/demo/infra/gitops/apps: Argo CD application manifests/Users/llsg822/dev/demo/secrets: SOPS encrypted secret templates/Users/llsg822/dev/demo/.github/workflows/ci.yml: CI template
- 필수 도구 확인
cd /Users/llsg822/dev/demo
./scripts/verify-prerequisites.sh- 프론트 의존성 설치
./scripts/bootstrap.sh- 백엔드 로컬 실행
cd apps/backend
docker compose up -d
gradle bootRun- 프론트 로컬 실행
cd apps/frontend
pnpm dev아래는 현재 최종 결정된 항목입니다.
| Domain | Decision Item | Options | Selected |
|---|---|---|---|
| Backend | Build system | Gradle Kotlin DSL / Maven | Gradle Kotlin DSL |
| Backend | DB migration tool | Flyway / Liquibase | Flyway |
| Backend | API contract style | OpenAPI-first / Code-first | OpenAPI-first |
| Infra | IaC tool | Terraform / Pulumi | Terraform |
| Infra | K8s packaging | Helm / Kustomize | Helm |
| Infra | GitOps controller | Argo CD / Flux | Argo CD |
| Frontend | Package manager | pnpm / npm | pnpm |
| Frontend | E2E test tool | Playwright / Cypress | Playwright |
| Security | Secret management | AWS Secrets Manager / Vault / SOPS | SOPS |
| Delivery | CI platform | GitHub Actions / GitLab CI / Jenkins | GitHub Actions |
| Delivery | Deploy strategy | GitOps pull / Pipeline push | GitOps pull |
- 비밀관리: 클라우드 전용 서비스 대신
SOPS를 기본 사용 - 배포/운영: 특정 벤더 기능보다
Kubernetes + Helm + Argo CD표준 워크플로우 우선 - CI:
GitHub Actions를 사용하되, 실제 빌드/테스트 로직은 스크립트화해 이식 가능하게 유지
- 선택 완료 시 아래 2개 파일을 같이 업데이트합니다.
/Users/llsg822/dev/demo/README.md의Selected컬럼/Users/llsg822/dev/demo/RECORDED_CONFIGURATION_GUIDE.md의Current Status/Owner Decision
/Users/llsg822/dev/demo/docs/PREREQUISITES.md기준으로 로컬/CI 환경을 먼저 맞춘 뒤, 초기 프로젝트 템플릿을 생성합니다.