私はいくつかのTerraformモジュールをリファクタリングしていて、
Error: Provider configuration not present
To work with
module.my_module.some_resource.resource_name its
original provider configuration at
module.my_module.provider.some_provider.provider_name is required, but it
has been removed. This occurs when a provider configuration is removed while
objects created by that provider still exist in the state. Re-add the provider
configuration to destroy
module.my_module.some_resource.resource_name, after
which you can remove the provider configuration again.
そのリソースをtfstateファイルから削除してから、新しいtf構成で再度追加する必要があるようです。
いくつかのモノリシックコードをリファクタリングしているので、これらの何百ものError: Provider configuration not present
メッセージ。
削除して再度追加するためのショートカットはありますか?
破棄したいモジュール内の一時的なリソースをコメントアウトし、レクリエーション時にリソースのコメントを外し、以下の手順に従ってエラーを回避できます。
モジュールからプロバイダーを削除し、モジュールにプロバイダーを明示的に渡します。
module "pass_provider" {
source = "../module"
providers = {
aws = aws
}
}
エイリアスでプロバイダーを渡す、
module "pass_provider_alias" {
source = "../module"
providers = {
aws = "aws.alias_name"
}
}