Thatzfit plugin을 SDK로 삽입하기 전에 필요한 초기 로딩 단계를 수행하는 loader 프로젝트입니다.
- plugin이 렌더링될
iframe을 먼저 삽입합니다. - 이후 plugin 코드를 로드해 SDK 삽입이 가능한 상태를 준비합니다.
- 즉, 최종 SDK 주입 전 단계에서 plugin 렌더링 환경과 코드 로딩을 연결하는 징검다리 역할을 담당합니다.
- loader가 실행됩니다.
- plugin 렌더링용
iframe이 생성/삽입됩니다. - plugin 소스가 로드됩니다.
- SDK 삽입 프로세스가 이어집니다.
- 현재는 thatzfit plugin이
main에 release 되면 release된 프로젝트를 빌드한 뒤, 생성된 산출물 파일명을 수동으로 변경해야 합니다. - 파일 매핑 규칙:
index-vendor계열 파일은vendorFile변수에 수동 반영index.~.js파일은sdkFile변수에 수동 반영style계열 파일은 CSS 파일 변수에 수동 반영
- 프로젝트 release 시 빌드 결과물이 클라우드 버킷에 업로드되므로, 배포 직후 CDN 캐시 무효화(invalidation)도 함께 수행해야 합니다.
- 추후 이 수동 절차를 줄이기 위해 CI/CD 워크플로우를 GitHub Actions 기반으로 전환할 필요가 있습니다.
flowchart TD
A[Plugin main release] --> B[GitHub Actions Trigger]
B --> C[Plugin Build]
C --> D[Build Artifact Scan]
D --> E[index-vendor 추출]
D --> F[index.~.js 추출]
D --> G[style 파일 추출]
E --> H[vendorFile 자동 반영]
F --> I[sdkFile 자동 반영]
G --> J[css 변수 자동 반영]
H --> K[SDK Injector Build]
I --> K
J --> K
K --> L[Cloud Bucket Upload]
L --> M[CDN Cache Invalidation]
M --> N[배포 완료]