refactor: 폴더 구조 변경

This commit is contained in:
donghyeon-ka
2026-08-02 00:22:19 +09:00
parent f9c463f87a
commit be2f8e4863
1869 changed files with 4565 additions and 295591 deletions
+24
View File
@@ -0,0 +1,24 @@
# Infrastructure Components
작고 응집된 재사용 단위를 둡니다.
예:
```text
components/
├── aws/
│ ├── network/
│ ├── identity/
│ └── eks/
├── gcp/
│ ├── network/
│ └── gke/
└── shared/
└── naming/
```
실제로 사용하는 provider 경로만 만듭니다. component에는 environment backend,
실제 credential과 환경 고유 값을 두지 않습니다. 입력, 출력, version constraint,
권한 요구 사항과 사용 예를 component README에 기록합니다.
새 component는 `_template`을 복사해 시작합니다.
@@ -0,0 +1,29 @@
# __REPLACE_ME_COMPONENT_NAME__
## 책임
이 component가 생성하고 소유하는 리소스를 적습니다.
## 입력
필수/선택 입력과 민감 정보 여부를 적습니다.
## 출력
다른 component 또는 live root에 제공하는 안정적인 contract를 적습니다.
## 요구 권한
plan/apply에 필요한 최소 provider 권한을 적습니다.
## 사용 예
실제 credential, account ID와 운영 값을 포함하지 않는 호출 예를 적습니다.
## 구현 체크리스트
- [ ] backend를 선언하지 않는다.
- [ ] provider/version constraint를 명시한다.
- [ ] 입력 validation과 민감 output 표시를 추가한다.
- [ ] 환경 이름을 내부에 하드코딩하지 않는다.
- [ ] README와 테스트를 함께 갱신한다.
@@ -0,0 +1,8 @@
# compute IaC Component
Contract:
- Owns reusable compute resources only.
- Must expose inputs and outputs before an environment depends on it.
- Must not contain environment-specific values.
- This is a non-runnable placeholder. Replace it with files for the selected
Terraform/OpenTofu-compatible engine when implemented.
@@ -0,0 +1,8 @@
# database IaC Component
Contract:
- Owns reusable database resources only.
- Must expose inputs and outputs before an environment depends on it.
- Must not contain environment-specific values.
- This is a non-runnable placeholder. Replace it with files for the selected
Terraform/OpenTofu-compatible engine when implemented.
@@ -0,0 +1,8 @@
# networking IaC Component
Contract:
- Owns reusable networking resources only.
- Must expose inputs and outputs before an environment depends on it.
- Must not contain environment-specific values.
- This is a non-runnable placeholder. Replace it with files for the selected
Terraform/OpenTofu-compatible engine when implemented.
@@ -0,0 +1,8 @@
# storage IaC Component
Contract:
- Owns reusable storage resources only.
- Must expose inputs and outputs before an environment depends on it.
- Must not contain environment-specific values.
- This is a non-runnable placeholder. Replace it with files for the selected
Terraform/OpenTofu-compatible engine when implemented.