- コマンドライン
- 基本的なCLI機能
- コマンド: state
- コマンド: state replace-provider
コマンド: state replace-provider
tofu state replace-provider
コマンドは、OpenTofu状態内のリソースのプロバイダーを置き換えるために使用されます。
使用方法
使用方法: tofu state replace-provider [オプション] FROM_PROVIDER_FQN TO_PROVIDER_FQN
このコマンドは、「from」プロバイダーを使用するすべてのリソースを更新し、プロバイダーを指定された「to」プロバイダーに設定します。これにより、現在状態にリソースを持つプロバイダーのソースを変更できます。
このコマンドは、変更を保存する前に状態のバックアップコピーを出力します。バックアップを無効にすることはできません。このコマンドの破壊的な性質のため、バックアップが必要です。
モジュールソース、バックエンド設定、または暗号化ブロックでの変数の使用には、tofu state replace-providers
を実行する際にルートモジュールの変数に値を割り当てる必要があります。
このコマンドは、以下のオプションも受け付けます。
-
-auto-approve
- 対話型の承認をスキップします。 -
-lock=false
- 操作中に状態ロックを保持しません。他のユーザーが同じワークスペースに対してコマンドを同時に実行する可能性がある場合、これは危険です。 -
-lock-timeout=0s
- 状態ロックを再試行する期間。 -
-var 'NAME=VALUE'
- 設定のルートモジュールの入力変数の値を1つ設定します。複数の変数を設定するには、このオプションを複数回使用します。詳細については、コマンドラインでの入力変数を参照してください。 -
-var-file=FILENAME
- "tfvars"ファイルの定義を使用して、設定のルートモジュールの複数の入力変数の値を設定します。複数のファイルの値を含めるには、このオプションを複数回使用します。
-var
および-var-file
オプション以外にも、ルートモジュールの入力変数の値を設定する方法はいくつかあります。詳細については、ルートモジュールの変数への値の割り当てを参照してください。
cloud
バックエンドまたはremote
バックエンドを使用する設定の場合のみ、tofu state replace-provider
は-ignore-remote-version
オプションも受け付けます。
local
状態を使用する設定の場合のみ、tofu state replace-provider
はレガシーオプション-state
、-state-out
、および-backup
も受け付けます。
例
以下の例では、hashicorp/aws
プロバイダーを、registry.acme.corp
のプライベートレジストリでホストされているacme
によるフォークに置き換えます。
$ tofu state replace-provider hashicorp/aws registry.acme.corp/acme/aws