Terraform Init创建空的TFSTATE文件



当我执行Terraform Init命令时,TF没有TFSTATE(我的TFSTATE文件在S3桶中)。另外,我无法在.terraform文件夹中看到Terraform的后端config文件。

我正在使用Terraform 0.10.4版本


输出:

$ terraform --version
Terraform v0.10.4
    
$ terraform init 
-lock="true"
-backend-config="bucket=$TF_STATE_BUCKET"
-backend-config="key=$TF_STATE_KEY"
-backend-config="dynamodb_table=$TF_LOCK_TABLE"
-backend-config="region=$AWS_REGION"
-backend-config="profile=$AWS_PROFILE"
-backend-config="encrypt=true"
.
Downloading modules...
Get: git::ssh://XXXXXXXXXXXXXXXXX/add/tf-vpc.git?ref=1.0.1
Get: git::ssh://XXXXXXXXXXXXXXXXX/add/tf-ec-redis.git?ref=1.1.3
Get: git::ssh://XXXXXXXXXXXXXXXXX/add/tf-rds-pg.git?ref=1.3.0
Initializing provider plugins...
    
Checking for available provider plugins on https://releases.hashicorp.com...
Downloading plugin for provider "aws" (0.1.4)...
    
The following providers do not have any version constraints in configuration, so the latest version was installed.
    
To prevent automatic upgrades to new major versions that may contain breaking changes, it is recommended to add version = "..." constraints to the corresponding provider blocks in configuration, with the constraint strings suggested below.
provider.aws: version = "~> 0.1"
Terraform has been successfully initialized!
You may now begin working with Terraform. Try running "terraform plan" to see any changes that are required for your infrastructure. All Terraform commands should now work.
If you ever set or change modules or backend configuration for Terraform,
rerun this command to reinitialize your working directory. If you forget, other commands will detect it and remind you to do so if necessary.
$ ll -al .terraform/
total 8
drwxr-xr-x 1 XXXXX 1049089 0 Sep 12 18:10 modules/
drwxr-xr-x 1 XXXXX 1049089 0 Sep 12 18:10 plugins/

在当前位置TF将备份S3-TFSTATE文件的备份,但不存在。

这是在0.9.x之后的期望行为。.terraform/terraform.tfstate上的本地TFSTATE文件几乎是一个空文件。唯一的更改是其中的序列号。它不断增加。

"serial": 1,

如果您不运行terraform apply,则不会更新远程TFSTATE文件。如果您从未运行terraform apply,则不存在远程TFSTATE文件。

因此,尝试进行一些更改,然后检查远程TFSTATE文件(在您的情况下,是s3://$TF_STATE_BUCKET/$TF_STATE_KEY),您应该看到差异。

最新更新