반응형
콩니🔧
개지니어 콩니
콩니🔧
전체 방문자
오늘
어제
  • 분류 전체보기 (79)
    • Life outside of work (13)
    • DevOps (29)
    • Developments (23)
    • CS and others (7)
    • Book reviews (7)

블로그 메뉴

  • 홈
  • 태그

공지사항

  • 제가 누군지 궁금하시다면

인기 글

태그

  • programmers
  • 프로그래머스
  • Jenkins
  • kubernetes
  • DevOps
  • Infra
  • Java
  • web
  • Network
  • HTML

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
콩니🔧

개지니어 콩니

DevOps

Terraform init 에러 해결하기 Experiment has concluded , terraform 1.2.9 다운그레이드하기

2022. 11. 1. 21:46
반응형

안녕하세요? 개지니어 콩니입니다. 프로 자격증 취득 후기도 못 썼는데 엉뚱한 걸로 돌아왔네요.
오늘의 주제는 테라폼에서 

│ Error: Experiment has concluded
│ 
│   on provider.tf line 8, in terraform:
│    8:   experiments = [module_variable_optional_attrs]
│ 
│ Experiment "module_variable_optional_attrs" is no longer available. The final feature corresponding to this experiment differs from the experimental form and is available in the Terraform language from
│ Terraform v1.3.0 onwards.

이런 에러가 발생했을 때 이를 해결..이라기보단 walkaround로 테라폼을 다운그레이드하여 적용하는 방법을 소개합니다.

저는 가상환경에서 작업하다 보니 대부분의 패키지들이 lts(latest) 버전으로 적용되어 있는데요,
terraform도 lts로 쓰다 보니 1.3.3 버전을 사용하고 있었습니다.
정상 동작한다는 걸 알고 있고, 로컬에서는 이슈가 없었던 리포지토리인데 아무 생각 없이 terraform init을 때렸는데
위와 같은 에러가 떨어지더라구요! 다시 일하러 가야 해서 길게는 못 쓰고 관련 내용은

https://github.com/hashicorp/terraform/issues/31692

 

Terraform 1.3 module_variable_optional_attrs experiment support · Issue #31692 · hashicorp/terraform

Terraform Version Terraform v1.3.0-alpha20220817 on darwin_amd64 Use Cases Migrating existing modules that make use of module_variable_optional_attrs to the new behavior requires a hard upgrade fro...

github.com

이 이슈를 참고하시면 좋겠습니다.

아무튼 제 잘못은 아닌 것이 확인되었으니 편안한 마음으로, 일단 버전을 1.3.0 버전 이상이 아닌 그 아래로 다운그레이드하여 우회하기로 하였습니다. CentOS를 사용하시면 아래의 커맨드로 1.2.9 버전으로 다운그레이드 하실 수 있고요.

sudo yum -y downgrade terraform-$(yum list --showduplicates terraform | grep 1.2. | awk '{print $2}' | tail -n 1)


머 우분투면.. apt get 써서 잘 하시면 되겠고요. 그것보다도 더 좋은 방법은 tfenv 라고 해서 테라폼을 여러 버전을 스위칭해가면서 사용하실 수 있는 툴이 있습니다.

https://github.com/tfutils/tfenv

 

GitHub - tfutils/tfenv: Terraform version manager

Terraform version manager. Contribute to tfutils/tfenv development by creating an account on GitHub.

github.com

1.2.9로 다운그레이드 후 init 잘 돌아서 문제 없이 사용하였습니다(저의 경우). 참고해 보시면 좋겠네요.

그럼 즐거운 테라폼 생활 되세요!

 

 

반응형
저작자표시 비영리 변경금지 (새창열림)

'DevOps' 카테고리의 다른 글

AWS Codepipeline에서 Codecommit의 encryption key가 없다는 에러가 발생할 때  (0) 2022.06.07
[Azure] Azure Container Registry(ACR) 오래된 이미지 삭제하기(preview 기능)  (0) 2022.02.18
[Bitbucket] Bitbucket API를 활용한 webhook 생성하기(Bitbucket PR Merge event webhook)  (2) 2022.01.30
[Terraform & Azure] Terraform으로 Azure 리소스의 하위 리소스 import 하기(Terraform import)  (0) 2022.01.23
[Kubernetes] AKS 쿠버네티스 Multi-AZ(Availability Zone) 환경에 PV를 사용할 때, 주의하자! volume node affinity conflict  (0) 2022.01.17
    콩니🔧
    콩니🔧
    개발알못 인프라알못 콩니

    티스토리툴바