ARTIFACTORY:无法安装地形模块和提供程序
Hashicorp的CDN提供商最近的变化导致对模块和提供程序的请求发生了变化。作为此更改的一部分,尝试从registry.terraform.io安装这些将导致" not found "错误。可以找到更多信息在这里.
例如,这是在对terraform-aws-modules/vpc/aws模块运行terraform init命令时从terraform返回的错误:$ terraform init
初始化模块……
╷
│错误:未找到模块
│
│模块"vpc"(来自main.tf:9)在
╵
由于此更改,针对registry.terraform.io注册表的HEAD请求将返回405响应,并且请求将失败。下面是两个HEAD请求的示例,它们将返回405响应,一个是在请求模块时,另一个是在请求提供商时:2023 - 01 - 23 t10:30:59.254z | 1861691 a0ccec459 | test-terraform-remote | | |头https://registry.terraform.io/v1/modules/terraform-aws-modules/vpc/aws/versions | 405 | 0 | 58 | 131年
2023 - 01 - 23 t12:21:59.254z | f67f0075f37bc6b8 | test-terraform-remote | | |头https://registry.terraform.io/v1/providers/splunk-terraform/signalfx/versions | 405 | 0 | 58 | 131年
log将记录404响应。例如:2023 - 01 - 23 t10:30:59.271z | 1861691 a0ccec459 | < IP > |新管理员| | / api /起程拓殖/ v1 /模块/ test-terraform__terraform-aws-modules vpc / aws /版本| 404 | 1 | 0 | 188 |起程拓殖/ 1.1.9
建议的修复此行为的方法是通过启用旁路HEAD请求复选框。选中后,Artifactory将绕过HEAD请求,并使用GET请求直接缓存工件。更改后,运行terraform init应该会导致一个成功的解析,并且请求应该返回一个200响应:2023 - 01 - 23 t10:29:47.593z | ac9a221d8444130c | test-terraform-remote | | | https://registry.terraform.io/v1/modules/terraform-aws-modules/vpc/aws/versions | 200 | 0 | 0 | 244年
2023 - 01 - 23 t10:29:48.271z | 5279686 b7bfe8eea | test-terraform-remote | | | https://registry.terraform.io/v1/modules/terraform-aws-modules/vpc/aws/3.19.0/download | 204 | 0 | 0 | 3