variables.tf和terraform.tfvars之间有什么区别?
variables.tf和terraform.tfvars之间有什么区别?,terraform,Terraform,变量.tf和地形.tfvars之间有什么区别?两者都可以定义(赋值)变量,对吗?在这两种方法中定义的变量的范围或行为有什么不同吗?就给变量赋值而言,可以用一个来代替另一个吗? variables.tf-在这里,您定义了必须具有值的变量,以便Terraform代码验证和运行。您还可以在此文件中定义变量的默认值。请注意,您不需要在名为variables.tf的文件中定义所有变量-它们可以在任何地方定义,但出于组织目的,鼓励使用这种做法 terraform.tfvars-此文件包含一个或多个varia
变量.tf
和地形.tfvars
之间有什么区别?两者都可以定义(赋值)变量,对吗?在这两种方法中定义的变量的范围或行为有什么不同吗?就给变量赋值而言,可以用一个来代替另一个吗?
-在这里,您定义了必须具有值的变量,以便Terraform代码验证和运行。您还可以在此文件中定义变量的默认值。请注意,您不需要在名为variables.tf
的文件中定义所有变量-它们可以在任何地方定义,但出于组织目的,鼓励使用这种做法variables.tf
-此文件包含一个或多个terraform.tfvars
=variablename
对。当Terraform加载此文件时,它会在Terraform中查找名为variablevalue
的任何变量,并将其值设置为variablename
。这里不能定义新变量,只能设置variablevalue
中定义的现有变量的值variables.tf
variables.tf
中创建并可能赋值。一个正常的用例是您有一个模块,您需要在其中分配资源中的name
。然后还可以创建一个名为name
的变量。因此,根据您的定义,您需要完成以下任务:
name = "${var.name}"
运行terraform plan
或terraform apply
时,需要设置所有变量。您可以在实际代码中设置它们,如name=“test”
,在执行时出现提示时将它们输入控制台,或者通过运行terraform apply-var file terraform.tfvars
将它们传递到命令中
tfvars
文件包含分配,可在多个环境中使用。通过将此文件传递到命令中,可以将值分配给相应的变量。例如,您可以使用它来分配区域、帐户ID等。如果这些文件包含敏感凭据,请确保.gitignore
将其存储在单独的凭据处理程序中。请添加一些详细信息:您在说什么语言(或lib?)?至少添加一些标签,为您的问题提供上下文。