说明: 我正在使用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
答案 0 :(得分:1)
states
以及plan
输出。状态文件中肯定有terraform-compliance
不满意的地方。
只需尝试相同的方法即可。是否可以与维护者私下共享状态文件(假设内部有敏感信息)?甚至剥去一些零件-但我想这样做会更困难。