terraform validate
: 테라폼 코드 작성시에 올바른 문법인지 확인
terraform fmt
: 테라폼 코드를 이쁜 형태로 변경해줌
변경되는 파일 출력
terraform show
: 모든 메타 정보가 표시됨
terraform providers
: 모든 프로바이더의 버전과 정보를 확인
brew installg graphviz'
terraform graph: 다이어그램 언어로 부표화
terraform graph | dot -Tsvg > sample.svg' :Terraform Init 시에 create, initailizing 되는 과정에서의 차이
resource "local_file" "hello"{
...
lifecycle {
create_before_destroy = true
}
- create_before_destroy: 새로 생성하고 구버전을 삭제
- prevent_destroy: 구버전 미 삭제(롤백 대비)
- ignore_changes : 리스트 형태로, 특정 Attirubte에 변경을 적용 시키지 않기 위해 지정
테라폼에 의해 관리되지 않는 리소스를 다루기 위한 방법
파일을 읽어와서 테라폼 state파일에 작성함.
(읽기만 가능함)
data "local_file" "world"{
filename = "/tmp/world.txt"
}
for_each : map 이나 set으로 읽어서 리소스를 생성함
provider : 프로바이더의 구성 설정
source : 로컬인지 깃인지 소스 저장소 위치
특정 버전의 프로바이더를 다운받기위함