chore: acquire-core migration monorepo (legacy C + Spring Boot target skeleton)
Some checks failed
ci / build (push) Failing after 2s
Some checks failed
ci / build (push) Failing after 2s
TxCore/ECPG legacy 매입·정산 C 슬라이스(빌드검증) + Spring Boot 멀티모듈 골격(mvn test green) + MIGRATION.md 전환룰 + CI(boot 빌드).
This commit is contained in:
commit
ff0b0b60a2
31 changed files with 2208 additions and 0 deletions
48
README.md
Normal file
48
README.md
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
# acquire-core-migration
|
||||
|
||||
카드 **매입·정산** 레거시 C 슬라이스를 **Spring Boot** 멀티모듈로 전환하기 위한
|
||||
**마이그레이션 모노레포**(테스트 픽스처). 소스(레거시)와 타겟(Spring 스켈레톤)을
|
||||
한 저장소에 두고, `MIGRATION.md` 의 규칙표를 따라 에이전트가 증분 이식한다.
|
||||
|
||||
## 레이아웃
|
||||
|
||||
```
|
||||
acquire-core-migration/
|
||||
├── legacy/ # SOURCE — 빌드되는 레거시 C 슬라이스 (TxCore 프레임워크 + 매입/정산 앱). 읽기 전용.
|
||||
├── boot/ # TARGET — Spring Boot 멀티모듈 스켈레톤 (Java 17, Spring Boot 3.3.x)
|
||||
│ ├── pom.xml # 부모 (packaging pom)
|
||||
│ ├── common-framework/ # 모듈 1 — TxCore 의 Spring 대체 스타터 (라이브러리 jar)
|
||||
│ └── modules/acquiring/ # 모듈 2 — 매입 업무 (@SpringBootApplication), common-framework 의존
|
||||
├── MIGRATION.md # 전환 플레이북 (레거시→Spring 규칙표 + 배치 규약)
|
||||
├── .forgejo/workflows/ci.yml # CI — Spring 타겟 빌드/테스트
|
||||
└── .gitignore
|
||||
```
|
||||
|
||||
## 두 단계 전환 계획
|
||||
|
||||
1. **공통 프레임워크 우선.** TxCore(`legacy/framework/txcore/`) → `boot/common-framework/`.
|
||||
서비스 디스패처·TXBUF·트랜잭션·로깅·전문 코덱 규약을 먼저 착지시킨다.
|
||||
2. **업무 모듈.** 매입/정산(`legacy/app/`) → `boot/modules/acquiring/`.
|
||||
`common-framework` 에 의존하며 매입접수 → 정산집계 → 대사 배치 순으로 채운다.
|
||||
|
||||
자세한 매핑은 [`MIGRATION.md`](./MIGRATION.md).
|
||||
|
||||
## 빌드
|
||||
|
||||
### 타겟 (Spring Boot 스켈레톤)
|
||||
|
||||
```sh
|
||||
docker run --rm -v "$PWD":/src -w /src/boot maven:3.9-eclipse-temurin-17 \
|
||||
bash -lc "mvn -q -B -DskipTests=false test"
|
||||
```
|
||||
|
||||
빈 스켈레톤이 컴파일되고 스모크 테스트가 초록이면 성공. DB 불필요.
|
||||
|
||||
### 소스 (레거시 C, 참고용)
|
||||
|
||||
```sh
|
||||
docker run --rm -v "$PWD/legacy":/src -w /src debian:12 bash -lc \
|
||||
"apt-get update -qq && apt-get install -y -qq build-essential libecpg-dev libpq-dev postgresql-server-dev-all >/dev/null 2>&1; make clean; make"
|
||||
```
|
||||
|
||||
레거시 슬라이스의 상세는 [`legacy/README.md`](./legacy/README.md).
|
||||
Reference in a new issue