當我在做terraform init命令時,TF沒有tfstate(我的tfstate文件在s3存儲桶中)。此外,我無法在.terraform文件夾內看到terraform backend-config文件。terraform init創建空的tfstate文件
我使用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!
您現在可以開始與Terraform工作。嘗試運行「terraform plan」以查看您的基礎架構所需的任何更改 。所有Terraform命令 現在應該可以工作。
如果您曾設置或更改Terraform的模塊或後端配置,請重新運行此命令以重新初始化您的工作目錄。如果您忘記了,其他命令會檢測到它並提醒您在必要時執行此操作。
$ 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文件的備份,但它不存在。
$ terraform refresh 空的或不存在的狀態文件。 刷新將無能爲力。刷新不會錯誤或返回錯誤的退出狀態,因爲許多自動化腳本使用刷新,計劃,然後應用 ,並且在第一次運行時可能還沒有狀態文件。 輸出: dev_private_zone_name = XXXXXXXXXX.local private_zone_name = XXXXXXXXXX.local – user2128514