refactor: 구조 변경
This commit is contained in:
@@ -0,0 +1,38 @@
|
||||
# Live Infrastructure
|
||||
|
||||
실제로 plan/apply하는 root를 둡니다. leaf 디렉터리 하나가 독립적인 state,
|
||||
locking, 권한과 실패 범위입니다.
|
||||
|
||||
소규모 예:
|
||||
|
||||
```text
|
||||
live/
|
||||
└── dev/
|
||||
├── network/
|
||||
└── cluster/
|
||||
```
|
||||
|
||||
확장 예:
|
||||
|
||||
```text
|
||||
live/
|
||||
└── aws/
|
||||
└── platform-prod/
|
||||
└── ap-northeast-2/
|
||||
└── prod/
|
||||
├── network/
|
||||
├── shared-services/
|
||||
└── cluster-a/
|
||||
```
|
||||
|
||||
경로 깊이보다 leaf의 실행 계약이 중요합니다. 자동화는 특정 depth를 가정하지
|
||||
말고 IaC root marker를 기준으로 대상을 찾습니다.
|
||||
|
||||
## 규칙
|
||||
|
||||
- 각 root는 remote backend와 locking을 사용합니다.
|
||||
- production과 non-production state/credential을 분리합니다.
|
||||
- 민감하지 않은 입력만 커밋하며 secret 입력은 runtime에 주입합니다.
|
||||
- 다른 환경 경로를 상대 import하지 않습니다.
|
||||
- provider, module과 component version을 고정합니다.
|
||||
- output consumer와 파괴 영향 범위를 README에 기록합니다.
|
||||
Reference in New Issue
Block a user