我在使用terraform代码时遇到错误,同时部署GCP编写器资源:
section
-name
。 section
可能不包含左方括号,方括号或连字符,而name
可能不包含分号或等号。整个属性键可能不包含句点。,badRequest在部署此GCP资源时出现问题:https://www.terraform.io/docs/providers/google/r/composer_environment.html
这是我的代码:
Variables.tf文件:
variable "composer_airflow_version" {
type = "map"
default = {
image_version="composer-1.6.1-airflow-1.10.1"
}
}
variable "composer_python_version" {
type = "map"
default = {
python_version="3"
}
}
my-composer.tf文件:
resource "google_composer_environment" "composer-beta" {
provider= "google-beta"
project = "my-proyect"
name = "${var.composer_name}"
region = "${var.region}"
config {
node_count = "${var.composer_node_count}"
node_config {
zone = "${var.zone}"
machine_type = "${var.composer_machine_type}"
network = "${google_compute_network.network.self_link}"
subnetwork = "${lookup(var.vpc_subnets_01[0], "subnet_name")}"
}
software_config {
airflow_config_overrides="${var.composer_airflow_version}",
airflow_config_overrides="${var.composer_python_version}",
}
}
depends_on = [
"google_service_account.comp-py3-dev-worker",
"google_compute_subnetwork.subnetwork",
]
}
根据错误消息,错误的根本原因似乎与terraform代码中的software_config部分有关。我知道变量“composer_airflow_version”和“composer_python_version”应该是“map”类型,因此,我将它们设置为地图格式。
非常感谢,如果有人能够找出错误的原因,并告诉我适用的调整。我可能应该对变量进行更改,但我不知道它是什么。 :-(
先谢谢你,何塞
根据文档,airflow_config_overrides,pypi_packages,env_variables,image_version和python_version应该直接在software_config下。
Variables.tf文件:
variable "composer_airflow_version" {
default = "composer-1.6.1-airflow-1.10.1"
}
variable "composer_python_version" {
default = "3"
}
my-composer.tf文件:
resource "google_composer_environment" "composer-beta" {
provider= "google-beta"
project = "my-proyect"
name = "${var.composer_name}"
region = "${var.region}"
config {
node_count = "${var.composer_node_count}"
node_config {
zone = "${var.zone}"
machine_type = "${var.composer_machine_type}"
network = "${google_compute_network.network.self_link}"
subnetwork = "${lookup(var.vpc_subnets_01[0], "subnet_name")}"
}
software_config {
image_version = "${var.composer_airflow_version}",
python_version = "${var.composer_python_version}",
}
}
depends_on = [
"google_service_account.comp-py3-dev-worker",
"google_compute_subnetwork.subnetwork",
]
}