【发布时间】:2018-02-01 08:40:45
【问题描述】:
当针对以下内容运行 terraform apply 时,如果我从 .tf 文件中删除变量并将第一个变量保留在与它一起使用的 ami 中,它会一直要求我在 CLI 上输入变量而不是从文件中接受一些按摩。有任何想法吗?
dev.tf 的内容:
variable "aws_region" {}
variable "instance_type" {}
variable "key_name" {}
variable "vpc_security_group_ids" {}
variable "subnet_id" {}
variable "iam_instance_profile" {}
variable "tag_env" {}
provider "aws" {
region = "${var.aws_region}"
}
data "aws_ami" "amazon_linux" {
most_recent = true
filter {
name = "name"
values = [
"amzn-ami-hvm-*-x86_64-gp2",
]
}
filter {
name = "owner-alias"
values = [
"amazon",
]
}
}
resource "aws_instance" "kafka" {
ami = "${data.aws_ami.amazon_linux.id}"
instance_type = "${var.instance_type}"
subnet_id = "${var.subnet_id}"
key_name = "${var.key_name}"
vpc_security_group_ids = ["${var.vpc_security_group_ids}"]
iam_instance_profile = "${var.iam_instance_profile}"
user_data = <<-EOF
#!/bin/bash
sudo yum -y install telnet
EOF
tags {
ProductCode = "id"
InventoryCode = "id"
Environment = "${var.tag_env}"
}
}
dev.tfvars 的内容:
aws_region = "us-east-1"
tag_env = "dev"
instance_type = "t2.large"
subnet_id = "subnet-id"
vpc_security_group_ids = "sg-id , sg-id"
key_name = "id"
iam_instance_profile = "id"
【问题讨论】:
-
你能添加你用来运行 Terraform 的命令吗?
-
默认情况下,Terraform 只会拉入名为
terraform.tfvars的 vars 文件,如果您想为它们提供不同的文件名,则需要添加-var-file=dev.tfvars
标签: terraform