mirror of
https://github.com/hashicorp/terraform.git
synced 2026-02-05 06:46:14 +01:00
61 lines
2.8 KiB
Plaintext
61 lines
2.8 KiB
Plaintext
---
|
|
page_title: terraform refresh command reference
|
|
description: |-
|
|
The `terraform refresh` command reads the current settings from all managed
|
|
remote objects and updates the Terraform state to match.
|
|
---
|
|
|
|
⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️
|
|
> [!IMPORTANT]
|
|
> **Documentation Update:** Product documentation previously located in `/website` has moved to the [`hashicorp/web-unified-docs`](https://github.com/hashicorp/web-unified-docs) repository, where all product documentation is now centralized. Please make contributions directly to `web-unified-docs`, since changes to `/website` in this repository will not appear on developer.hashicorp.com.
|
|
⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️
|
|
|
|
|
|
# `terraform refresh` command
|
|
|
|
The `terraform refresh` command reads the current settings from all managed
|
|
remote objects and updates the Terraform state to match. This command is deprecated. Instead, add the `-refresh-only` flag to [`terraform apply`](/terraform/cli/commands/apply) and [`terraform plan`](/terraform/cli/commands/plan) commands.
|
|
|
|
This does not modify your real remote objects, but it modifies the
|
|
[Terraform state](/terraform/language/state).
|
|
|
|
> **Hands-on:** Try the [Use Refresh-Only Mode to Sync Terraform State](/terraform/tutorials/state/refresh) tutorial.
|
|
|
|
## Usage
|
|
|
|
Usage: `terraform refresh [options]`
|
|
|
|
This command is effectively an alias for the following command:
|
|
|
|
```
|
|
terraform apply -refresh-only -auto-approve
|
|
```
|
|
|
|
Consequently, it supports all of the same options as
|
|
[`terraform apply`](/terraform/cli/commands/apply) except that it does not accept a saved
|
|
plan file, it doesn't allow selecting a planning mode other than "refresh only",
|
|
and `-auto-approve` is always enabled.
|
|
|
|
Automatically applying the effect of a refresh is risky. If you have
|
|
misconfigured credentials for one or more providers, Terraform may
|
|
be misled into thinking that all of the managed objects have been deleted,
|
|
causing it to remove all of the tracked objects without any confirmation prompt.
|
|
|
|
Instead, we recommend using the following command in order to get the same
|
|
effect but with the opportunity to review the changes that Terraform has
|
|
detected before committing them to the state:
|
|
|
|
```
|
|
terraform apply -refresh-only
|
|
```
|
|
|
|
This alternative command will present an interactive prompt for you to confirm
|
|
the detected changes.
|
|
|
|
The `-refresh-only` option for `terraform plan` and `terraform apply` was
|
|
introduced in Terraform v0.15.4. For prior versions you must use
|
|
`terraform refresh` directly if you need this behavior, while taking into
|
|
account the warnings above. Wherever possible, avoid using `terraform refresh`
|
|
explicitly and instead rely on Terraform's behavior of automatically refreshing
|
|
existing objects as part of creating a normal plan.
|