terraform-compliance错误:不是有效的terraform计划json输出

时间:2020-06-24 17:29:26

标签: terraform terraform-provider-aws terraform0.12+

说明: 我正在使用terraform-compliance,它似乎不想接受文档说要使用的标准json文件。我在github上创建了一个问题,但我想在这里将其扩展,以防万一我丢失了完全可能的内容。

OS:macos catalina

运行docker

terraform-compliance v1.2.7

我只是在文档上运行脚本,当我将其传递给适当的json文件时,它似乎不起作用。仍然保持吗?

要复制

# main.tf
provider "aws" {
  region = var.region
}

locals {
  common_tags = {
    Environment        = var.env_name
    TerraformWorkspace = var.env_name
  }
}

terraform {
  backend "remote" {
    organization = "*******"
    workspaces {
      prefix = "******"
    }
  }
}
# variables.tf
variable "region" {
  description = "AWS region"
}

variable "env_name" {
}

使用的terraform-compliance参数我不确定这是什么意思?

我应该在docker中运行它们吗?

$ terraform show -json > state.out.json
$ terraform state pull > state.out
$ terraform-compliance -p state.out.json
# terraform-compliance v1.2.7 initiated

# ERROR: state.out.json is not a valid terraform plan json output.

经过测试的版本:

  • terraform-compliance v1.2.7

  • Terraform v0.12.26

  • Python 2.7.16

1 个答案:

答案 0 :(得分:1)

还支持

states以及plan输出。状态文件中肯定有terraform-compliance不满意的地方。

只需尝试相同的方法即可。是否可以与维护者私下共享状态文件(假设内部有敏感信息)?甚至剥去一些零件-但我想这样做会更困难。