Make google_project_services resource importable (#601)

* Make google_project_services resource importable

* Reuse testAccGoogleProjectAssociateServicesBasic() from resource_google_project_services_test.go
This commit is contained in:
Patrick Decat 2017-10-23 23:23:51 +02:00 committed by Dana Hoffman
parent 69207b87ec
commit 16611cb3ac
3 changed files with 46 additions and 0 deletions

View File

@ -0,0 +1,34 @@
package google
import (
"testing"
"github.com/hashicorp/terraform/helper/acctest"
"github.com/hashicorp/terraform/helper/resource"
)
func TestAccGoogleProjectServices_importBasic(t *testing.T) {
t.Parallel()
resourceName := "google_project_services.acceptance"
projectId := "terraform-" + acctest.RandString(10)
services := []string{"iam.googleapis.com", "cloudresourcemanager.googleapis.com", "servicemanagement.googleapis.com"}
conf := testAccGoogleProjectAssociateServicesBasic(services, projectId, pname, org)
resource.Test(t, resource.TestCase{
PreCheck: func() { testAccPreCheck(t) },
Providers: testAccProviders,
Steps: []resource.TestStep{
resource.TestStep{
Config: conf,
},
resource.TestStep{
ResourceName: resourceName,
ImportState: true,
ImportStateId: projectId,
ImportStateVerify: true,
},
},
})
}

View File

@ -14,6 +14,9 @@ func resourceGoogleProjectServices() *schema.Resource {
Read: resourceGoogleProjectServicesRead,
Update: resourceGoogleProjectServicesUpdate,
Delete: resourceGoogleProjectServicesDelete,
Importer: &schema.ResourceImporter{
State: schema.ImportStatePassthrough,
},
Schema: map[string]*schema.Schema{
"project": &schema.Schema{
@ -71,6 +74,7 @@ func resourceGoogleProjectServicesRead(d *schema.ResourceData, meta interface{})
return err
}
d.Set("project", d.Id())
d.Set("services", services)
return nil
}

View File

@ -34,3 +34,11 @@ The following arguments are supported:
* `services` - (Required) The list of services that are enabled. Supports
update.
## Import
Project services can be imported using the `project_id`, e.g.
```
$ terraform import google_project_services.my_project your-project-id
```