Terraform plan updates your state file.
Terraform plan updates your state file.
The terraform plan command does not update your state file. Instead, it generates an execution plan by comparing the desired state (defined in your Terraform configuration files) with the actual state (stored in the state file) of your infrastructure. The plan shows the changes that Terraform will make to the infrastructure without actually applying those changes. The state file is only updated when you run terraform apply, which applies the changes to your infrastructure and updates the state file to reflect the new state.
B. False The terraform plan command does not update your state file. Instead, it generates an execution plan by comparing the desired state (defined in your Terraform configuration files) with the actual state (stored in the state file) of your infrastructure. The plan shows the changes that Terraform will make to the infrastructure without actually applying those changes. The state file is only updated when you run terraform apply, which applies the changes to your infrastructure and updates the state file to reflect the new state.
A good explanation. If anyone is still doubting this; remember that the state file reflects your actual infrastructure. Since "terraform plan" does not actually change your infrastructure, it would make no sense for it to change your state file. That would make your state file invalid (state drift)!
Terraform plan always forst check the state of existing resources refreshes/updates that to state. If there is configuration drift from last apply, then terraform will first refresh the state to respreset the current state of the resources, for example if any resouce is deleted or changed that will be upadted in the state and then the chnages to be doe will be displayed
Yes, everytime when I run Terraform Plan, my backend state file is also updated. I can see the last modified timestamp has been updated, even I didn't apply the change.
"To determine whether state drift occurred, Terraform performs a refresh operation before it begins to build an execution plan. This refresh step pulls the actual state of all of the resources currently tracked in your state file. --> Terraform does not update your actual state file <--, but captures the refreshed state in the plan file." (https://developer.hashicorp.com/terraform/tutorials/cli/plan) "You can also update your state file without making modifications to your infrastructure using the -refresh-only flag for plan and apply operations." (https://developer.hashicorp.com/terraform/tutorials/state/refresh) So plan doesn't update the state file (just an in-memory sync) unless you specify the --refresh-only flag
terraform state will UPDATE your state file in case you change the resources outside the terraform. IT will "sync" your state file with the actual infrastructure.
Refer to https://stackoverflow.com/questions/66240556/terraform-plan-not-updating-state-file
Check the 2nd last comment in the link, should be B. Apologies.
B. False Terraform plan does not update the state file itself. It performs an in-memory refresh to reconcile the state file with the actual infrastructure, but it doesn't modify the state file on disk. The update to the state file happens during terraform apply if there are changes required.
"A" should be correct : "Terraform automatically performs the same refreshing actions as a part of creating a plan in both the terraform plan and terraform apply commands." https://developer.hashicorp.com/terraform/cli/commands/refresh
when you run terraform plan , it will refresh the state file automaticlly
The terraform plan command does not update the state file. It performs a refresh of the state in-memory to generate an execution plan, but it does not persist these changes to the state file. The state file is updated when you run terraform apply.
create one simple instance and change the tags from AWS console. After this run terraform plan command. As a result it wont update the state file with new tags. So answer is B
Nope.Plan does not change state file.But others like apply destroy after approve will :)
A. True "You can also update your state file without making modifications to your infrastructure using the -refresh-only flag for plan and apply operations." https://developer.hashicorp.com/terraform/tutorials/state/refresh
terraform plan -refresh-only only make the plan of changing state file.
B, terraform plan doesn't update the state
terraform state will UPDATE your state file in case you change the resources outside the terraform. IT will "sync" your state file with the actual infrastructure.
The terraform plan command does not change the state of your infrastructure. It creates an execution plan that lets you preview the changes that Terraform plans to make to your infrastructure
B is the correct answer
b is the correct answer