為了便于理解,這是我的問題的簡化示例。
我的團隊曾經通過module1呼叫來管理 S3 存盤桶module2,其中包含存盤桶的代碼。
production_account/ --(invokes)--> module1/ --(invokes)--> module2/s3.tf
但后來他們決定重構代碼,直接呼叫module2.
production_account/ --(invokes)--> module2/s3.tf
結果,當我現在對計劃進行地形改造時,我得到:
module.module1.module.module2.aws_s3_bucket.bucket will be destroyed {
...
}
module.module2.aws_s3_bucket.bucket will be created {
...
}
簡而言之,terraform 想要重新創建 s3 存盤桶。這樣做的問題是所有資料都將丟失。
有沒有辦法將現有的bucket匯入狀態并通過模塊2進行管理?
terraform import module.module1.module.module2.aws_s3_bucket.bucket
解決了我問題的前半部分。
uj5u.com熱心網友回復:
是的。使用terraform 狀態 mv not import。
terraform state mv module.module1.module2.aws_s3_bucket.bucket module.module2.aws_s3_bucket.bucket
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/339928.html
