0

描述:我正在使用 terraform-compliance,它似乎不想接受文档说要使用的标准 json 文件。我在 github 上创建了一个问题,但我想我会在这里扩展它,以防我遗漏了一些完全可能的东西。

操作系统:macos catalina

运行泊坞窗

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

4

1 回答 1

1

states也支持,以及plan输出。您的状态文件中一定有一些terraform-compliance不满意的地方。

只是尝试了相同的,它的工作原理。是否可以与维护者私下共享状态文件(假设里面会有敏感信息)?或者也许剥离一些部分 - 但我想这将更难做到。

于 2020-07-03T10:31:11.213 回答