terraform init에서 "Failed to query available provider packages"가 발생했을 때의 대처법
사용한 플러그인은 다음과 같습니다.
사용중인 terraform의 버전은 다음과 같습니다. (Mac 환경을 사용하고 있습니다)
$ terraform -v
Terraform v0.15.4
on darwin_amd64
오류 내용
시작하기 전에
terraform init
에서 사용하는 provider plugin을 설정했지만이 시점에서 오류가 발생했습니다.$ terraform init
Initializing the backend...
Initializing provider plugins...
- Finding latest version of hashicorp/esxi...
╷
│ Error: Failed to query available provider packages
│
│ Could not retrieve the list of available versions for provider hashicorp/esxi: provider registry registry.terraform.io does not have a
│ provider named registry.terraform.io/hashicorp/esxi
│
│ All modules should specify their required_providers so that external consumers will get the correct providers when using a module. To see
│ which modules are currently depending on hashicorp/esxi, run the following command:
│ terraform providers
사용한 파일은 다음과 같습니다.
main.tf
terraform {
required_providers {
esxi = {
source = "hashicorp/esxi"
}
}
}
provider "esxi" {
esxi_hostname = "192.168.0.2" # ESXiのIPアドレス
esxi_hostport = "22"
esxi_hostssl = "443"
esxi_username = "root" # ESXiにSSHするときのUSER
esxi_password = "pa$$w0rd" # ESXiにSSHするときのPASSWORD
}
resource "esxi_guest" "vmtest" {
guest_name = "vmtest"
disk_store = "datastore1"
network_interfaces {
virtual_network = "VM Network"
mac_address = "00:50:56:00:00:00"
}
}
대처법
source = "hashicorp/esxi"
라는 지정이 잘못되었으므로 source = "josenk/esxi"
로 수정하여 해결했습니다. (공식 문서에도 쓰여졌습니다,,)main.tf
terraform {
required_providers {
esxi = {
source = "josenk/esxi" # ここを修正
}
}
}
terraform 0.13부터 Provider가 htps : // 레기 스트리. 테라후 rm. 이오/ 에서 배포되므로
source = "<Provider名>/<プラグイン名>"
라고 기재하는 것으로 htps : // 레기 스트리. 테라후 rm. 이오/또,
source = "registry.terraform.io/josenk/esxi"
라고 기재해도 같은 동작이 됩니다.플러그인을 사용할 때는 레지스트리의 웹 페이지로 가서 오른쪽 상단의 "USE PROVIDER"를 클릭하면 필요한 terraform의 version과 코드를 볼 수 있으므로 표시된대로 나열하면 문제 없습니다.
Reference
Reference
이 문제에 관하여(terraform init에서 "Failed to query available provider packages"가 발생했을 때의 대처법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/yumenomatayume/items/fbd4fd2ccd88c88079e7텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)