**Infrastructure as Code(IaC)**는 애플리케이션 deploy뿐만 아니라 인프라의 프로비저닝과 관리를 자동화하기 위해 CI/CD와 통합됩니다 — 코드처럼 pipeline을 통해 인프라 변경을 적용합니다. 이는 인프라에 일관성, 자동화, 버전 관리를 가져옵니다.
CI/CD pipeline 내 IaC
인프라(서버, 네트워크, 데이터베이스)를 코드로 정의(Terraform, CloudFormation 등)하고
CI/CD pipeline을 통해 관리:
→ 인프라 변경이 앱 코드와 동일한 워크플로우를 거침 (PR → 리뷰 → apply)
→ pipeline이 IaC 도구를 실행하여 인프라를 자동으로 프로비저닝/업데이트
→ 인프라가 버전 관리되고, 리뷰되며, 일관되게 적용됨
일반적인 IaC pipeline
1. 인프라 코드 변경 (예: Terraform 파일) → push/PR
2. PLAN → pipeline이 `terraform plan` 실행 → 무엇이 변경될지 표시 (diff 리뷰)
3. REVIEW → 팀이 계획된 변경을 리뷰 (PR) — apply 전 실수 발견
4. APPLY → merge 시, pipeline이 `terraform apply` 실행 → 변경을 만듦
→ 인프라 변경이 자동화되고, 리뷰되며, 감사 가능 (코드 변경처럼).
