mirror of
https://github.com/opentffoundation/opentf.git
synced 2026-02-16 16:00:37 -05:00
* Initial renaming, rewriting and cleaning up wave for the CLI docs. Signed-off-by: Jakub Martin <kubam@spacelift.io> * More renaming. Signed-off-by: Jakub Martin <kubam@spacelift.io> * More renaming. Signed-off-by: Jakub Martin <kubam@spacelift.io> * More renaming. Signed-off-by: Jakub Martin <kubam@spacelift.io> * Remove tutorial references. Signed-off-by: Jakub Martin <kubam@spacelift.io> * Post-review fixes. Signed-off-by: Jakub Martin <kubam@spacelift.io> --------- Signed-off-by: Jakub Martin <kubam@spacelift.io>
49 lines
2.1 KiB
Plaintext
49 lines
2.1 KiB
Plaintext
---
|
|
page_title: 'Command: state push'
|
|
description: The `opentf state push` command pushes items to the OpenTF state.
|
|
---
|
|
|
|
# Command: state push
|
|
|
|
The `opentf state push` command is used to manually upload a local
|
|
state file to [remote state](/opentf/language/state/remote). This command also
|
|
works with local state.
|
|
|
|
This command should rarely be used. It is meant only as a utility in case
|
|
manual intervention is necessary with the remote state.
|
|
|
|
## Usage
|
|
|
|
Usage: `opentf state push [options] PATH`
|
|
|
|
This command pushes the state specified by PATH to the currently
|
|
configured [backend](/opentf/language/settings/backends/configuration).
|
|
|
|
If PATH is "-" then the state data to push is read from stdin. This data
|
|
is loaded completely into memory and verified prior to being written to
|
|
the destination state.
|
|
|
|
-> **Note:** OpenTF 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 `opentf state push | sc opentf.tfstate`.
|
|
|
|
OpenTF will perform a number of safety checks to prevent you from
|
|
making changes that appear to be unsafe:
|
|
|
|
- **Differing lineage**: If the "lineage" value in the state differs,
|
|
OpenTF will not allow you to push the state. A differing lineage
|
|
suggests that the states are completely different and you may lose
|
|
data.
|
|
|
|
- **Higher remote serial**: If the "serial" value in the destination state
|
|
is higher than the state being pushed, OpenTF will prevent the push.
|
|
A higher serial suggests that data is in the destination state that isn't
|
|
accounted for in the local state being pushed.
|
|
|
|
Both of these safety checks can be disabled with the `-force` flag.
|
|
**This is not recommended.** If you disable the safety checks and are
|
|
pushing state, the destination state will be overwritten.
|
|
|
|
For configurations using the [`cloud` backend](/opentf/cli/cloud) or the [`remote` backend](/opentf/language/settings/backends/remote)
|
|
only, `opentf state push`
|
|
also accepts the option
|
|
[`-ignore-remote-version`](/opentf/cli/cloud/command-line-arguments#ignore-remote-version).
|