diff --git a/import_digitalocean_floating_ip_test.go b/import_digitalocean_floating_ip_test.go new file mode 100644 index 00000000..5114cac2 --- /dev/null +++ b/import_digitalocean_floating_ip_test.go @@ -0,0 +1,49 @@ +package digitalocean + +import ( + "testing" + + "github.com/hashicorp/terraform/helper/resource" +) + +func TestAccDigitalOceanFloatingIP_importBasicRegion(t *testing.T) { + resourceName := "digitalocean_floating_ip.foobar" + + resource.Test(t, resource.TestCase{ + PreCheck: func() { testAccPreCheck(t) }, + Providers: testAccProviders, + CheckDestroy: testAccCheckDigitalOceanFloatingIPDestroy, + Steps: []resource.TestStep{ + resource.TestStep{ + Config: testAccCheckDigitalOceanFloatingIPConfig_region, + }, + + resource.TestStep{ + ResourceName: resourceName, + ImportState: true, + ImportStateVerify: true, + }, + }, + }) +} + +func TestAccDigitalOceanFloatingIP_importBasicDroplet(t *testing.T) { + resourceName := "digitalocean_floating_ip.foobar" + + resource.Test(t, resource.TestCase{ + PreCheck: func() { testAccPreCheck(t) }, + Providers: testAccProviders, + CheckDestroy: testAccCheckDigitalOceanFloatingIPDestroy, + Steps: []resource.TestStep{ + resource.TestStep{ + Config: testAccCheckDigitalOceanFloatingIPConfig_droplet, + }, + + resource.TestStep{ + ResourceName: resourceName, + ImportState: true, + ImportStateVerify: true, + }, + }, + }) +} diff --git a/resource_digitalocean_floating_ip.go b/resource_digitalocean_floating_ip.go index 1479ecfa..c6b9cd32 100644 --- a/resource_digitalocean_floating_ip.go +++ b/resource_digitalocean_floating_ip.go @@ -16,6 +16,9 @@ func resourceDigitalOceanFloatingIp() *schema.Resource { Update: resourceDigitalOceanFloatingIpUpdate, Read: resourceDigitalOceanFloatingIpRead, Delete: resourceDigitalOceanFloatingIpDelete, + Importer: &schema.ResourceImporter{ + State: schema.ImportStatePassthrough, + }, Schema: map[string]*schema.Schema{ "ip_address": &schema.Schema{ @@ -123,7 +126,6 @@ func resourceDigitalOceanFloatingIpRead(d *schema.ResourceData, meta interface{} log.Printf("[INFO] The region of the Droplet is %s", floatingIp.Droplet.Region.Slug) d.Set("region", floatingIp.Droplet.Region.Slug) d.Set("droplet_id", floatingIp.Droplet.ID) - } else { d.Set("region", floatingIp.Region.Slug) }