mirror of
https://github.com/opentffoundation/opentf.git
synced 2025-12-21 10:47:34 -05:00
Signed-off-by: Christian Mesh <christianmesh1@gmail.com> Signed-off-by: ollevche <ollevche@gmail.com> Co-authored-by: ollevche <ollevche@gmail.com>
58 lines
2.7 KiB
Plaintext
58 lines
2.7 KiB
Plaintext
---
|
|
description: >-
|
|
The `tofu state pull` command is used to manually download and output the
|
|
state from remote state.
|
|
---
|
|
|
|
# Command: state pull
|
|
|
|
The `tofu state pull` command is used to manually download and output
|
|
the state from [remote state](../../../language/state/remote.mdx). This command also
|
|
works with local state.
|
|
|
|
## Usage
|
|
|
|
Usage: `tofu state pull`
|
|
|
|
This command downloads the state from its current location, upgrades the
|
|
local copy to the latest state file version that is compatible with
|
|
locally-installed OpenTofu, and outputs the raw format to stdout.
|
|
|
|
This is useful for reading values out of state (potentially pairing this
|
|
command with something like [jq](https://stedolan.github.io/jq/)). It is
|
|
also useful if you need to make manual modifications to state.
|
|
|
|
You cannot use this command to inspect the OpenTofu version of
|
|
the remote state, as it will always be converted to the current OpenTofu
|
|
version before output.
|
|
|
|
:::note
|
|
OpenTofu state files must be in UTF-8 format without a byte order mark (BOM). For PowerShell on Windows, use `Set-Content` to automatically encode files in UTF-8 format. For example, run `tofu state pull | sc terraform.tfstate`.
|
|
:::
|
|
|
|
:::note
|
|
Use of variables in [module sources](../../../language/modules/sources.mdx#support-for-variable-and-local-evaluation),
|
|
[backend configuration](../../../language/settings/backends/configuration.mdx#variables-and-locals),
|
|
or [encryption block](../../../language/state/encryption.mdx#configuration)
|
|
requires [assigning values to root module variables](../../../language/values/variables.mdx#assigning-values-to-root-module-variables)
|
|
when running `tofu state pull`.
|
|
:::
|
|
|
|
The command support the following command-line arguments:
|
|
|
|
* `-var 'NAME=VALUE'` - Sets a value for a single
|
|
[input variable](../../../language/values/variables.mdx) declared in the
|
|
root module of the configuration. Use this option multiple times to set
|
|
more than one variable. Refer to
|
|
[Input Variables on the Command Line](../plan.mdx#input-variables-on-the-command-line) for more information.
|
|
|
|
* `-var-file=FILENAME` - Sets values for potentially many
|
|
[input variables](../../../language/values/variables.mdx) declared in the
|
|
root module of the configuration, using definitions from a
|
|
["tfvars" file](../../../language/values/variables.mdx#variable-definitions-tfvars-files).
|
|
Use this option multiple times to include values from more than one file.
|
|
|
|
There are several other ways to set values for input variables in the root
|
|
module, aside from the `-var` and `-var-file` options. Refer to
|
|
[Assigning Values to Root Module Variables](../../../language/values/variables.mdx#assigning-values-to-root-module-variables) for more information.
|