1
Jerry가 프로비저닝 실행 시 변경 사항이 발생하도록 코드를 수정한다고 가정하여, null_resource에 정의한 내용이 항상 수행되도록 trigger를 추가함
trigger에 timestamp() 함수를 지정하면 테라폼 프로비저닝 실행마다 다른 값이 저장되므로 항상 변경이 유발함
2
jerry 루트 모듈에서 main.tf 파일 코드 변경 및 실행 - 주석 해제
resource "null_resource" "configure-cat-app" {
depends_on = [aws_eip_association.hashicat]
triggers = {
build_number = timestamp()
}
#
terraform apply -var=prefix=dev
...
Enter a value: <대기>
# null_resource.configure-cat-app must be replaced
-/+ resource "null_resource" "configure-cat-app" {
~ id = "8047617178209046850" -> (known after apply)
+ triggers = { # forces replacement
+ "build_number" = (known after apply)
}
}
3
신규 터미널에서 tom 루트 모듈에서 실행
cd
cd terraform-aws-collaboration-tom
#
terraform apply -var=prefix=dev
╷
│ Error: Error acquiring the state lock
│
│ Error message: workspace already locked (lock ID: "gasida-org/terraform-aws-collaboration")
│ Lock Info:
│ ID: 4869b6f7-8c57-6f50-857c-9730999b8b2a
│ Path:
│ Operation: OperationTypeApply
│ Who: gasida@seojonghoui-MacBookPro.local
│ Version: 1.5.1
│ Created: 2023-08-06 09:01:03.131157 +0000 UTC
│ Info:
│
│
│ Terraform acquires a state lock to protect the state from being written
│ by multiple users at the same time. Please resolve the issue above and try
│ again. For most commands, you can disable locking with the "-lock=false"
│ flag, but this is not recommended.
2
TFC Workspace 에 State 확인
4
jerry 루트 모듈에서 실행
#
terraform apply -var=prefix=dev
...
Enter a value: yes
Apply complete! Resources: 1 added, 0 changed, 1 destroyed.
Outputs:
6
TFC Workspace 에 State → [Changes in this version] 에서 변경 사항 확인
unlock
상태 변경이 하나더 추가 됨
1
terraform destroy -auto-approve -var=prefix=dev
Destroy complete! Resources: 12 destroyed.
2
TFC에 워크스페이스 삭제 : Setting → Destruction and Deletion 클릭 후 삭제
3
Github Repo 삭제 : terraform-aws-collaboration → Setting → Delete this repository
4
로컬 디렉터리 삭제 : terraform-aws-collaboration-tom , terraform-aws-collaboration-jerry
5
AWS 콘솔에서 리소스 확인후 삭제
https://vclock.kr/timer/#countdown=00:10:00&enabled=0&seconds=0&sound=xylophone&loop=1
다음과정
https://brunch.co.kr/@topasvga/3407
전체 보기
https://brunch.co.kr/@topasvga/3347
https://gasidaseo.notion.site/gasidaseo/CloudNet-Blog-c9dfa44a27ff431dafdd2edacc8a1863
감사합니다.