首页 > 解决方案 > 如何使 Terraform 提供程序支持导入?

问题描述

我使用的 Terraform 提供程序不支持至少一种资源的导入:

~/Downloads/terraform import module.fra.something.myid myid
module.fra.something.myid: Importing from ID "myid"...

Error: resource something doesn't support import

然而,Terraform 的文档甚至没有提到如何添加这种支持。那么如何进行呢?

标签: terraform

解决方案


查看文档的“导入”小节。它位于文档结构的不同部分。

简而言之,您需要实现另一个功能。在现有的之上:

    return &schema.Resource{
        Create: resourceSomethingCreate,
        Read:   resourceSomethingRead,
        Delete: resourceSomethingDelete,
        Update: resourceSomethingUpdate,
        Exists: resourceSomethingExists,

实施resourceSomethingImporter

        Importer: resourceSomethingImporter, 

如果你的用例足够简单,你可以通过参考来重用现有的实现:

    Importer: &schema.ResourceImporter{
      State: schema.ImportStatePassthrough,
    },

推荐阅读