You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用terraform-local测试模块遇meteringmarketplace参数不支持错误求助

修复Terraform-Local中AWS Provider的"meteringmarketplace"参数错误

问题详情

本地运行Terraform堆栈时触发如下错误:

Error: Unsupported argument

on localstack_providers_override.tf line 67, in provider "aws":
67: meteringmarketplace = "http://localhost:4566"

An argument named "meteringmarketplace" is not expected here.

当前环境与资源:

  • Terraform版本:v1.2.7
  • Terraform-Local版本:v1.2.7
  • 涉及资源:Node.js runtime的Lambda函数、API Gateway、CloudWatch日志组、IAM角色、S3对象及其他次要资源

解决方案

1. 修正参数配置位置

meteringmarketplace属于AWS服务的endpoint配置,不能直接写在provider "aws"的根层级,必须嵌套在endpoints块内。修改后的provider配置示例:

provider "aws" {
  region = "us-east-1" # 根据你的实际配置调整
  # 其他全局配置(如LocalStack所需的占位access_key、secret_key)

  endpoints {
    meteringmarketplace = "http://localhost:4566"
    # 可按需添加其他LocalStack支持的服务endpoint,比如lambda、apigateway等
  }
}

2. 确保AWS Provider版本兼容

旧版本的Terraform AWS Provider可能不支持meteringmarketplace的endpoint配置。在你的Terraform配置文件中指定兼容的Provider版本:

terraform {
  required_providers {
    aws = {
      source  = "hashicorp/aws"
      version = ">= 3.70.0" # 此版本及以上支持Metering Marketplace的endpoint配置
    }
  }
}

执行terraform init -upgrade命令升级Provider到指定版本。

3. 验证LocalStack服务支持

确认你的LocalStack版本支持AWS Metering Marketplace服务(可通过localstack status services命令查看已启用的服务)。若该服务未被支持,可移除该endpoint配置,或升级LocalStack到支持该服务的版本。

内容的提问来源于stack exchange,提问作者Chase Denecke

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.22 15:27:11