From 13a627e3df28ae75ab822b0361dc100bdd058f69 Mon Sep 17 00:00:00 2001 From: Chris Stephens Date: Thu, 8 Nov 2018 21:48:42 +0000 Subject: [PATCH] Fix ci tests --- .../resource_composer_environment_test.go | 8 +++++--- .../resource_compute_project_metadata_item.go | 17 ++++++++++++----- google-beta/resource_compute_snapshot.go | 6 +++--- google-beta/resource_dataproc_job.go | 7 +++++++ .../compute_project_metadata_item.html.markdown | 9 +++++++++ website/docs/r/compute_snapshot.html.markdown | 9 +++++++++ 6 files changed, 45 insertions(+), 11 deletions(-) diff --git a/google-beta/resource_composer_environment_test.go b/google-beta/resource_composer_environment_test.go index ccfdaa42cd..0bc16e7836 100644 --- a/google-beta/resource_composer_environment_test.go +++ b/google-beta/resource_composer_environment_test.go @@ -4,15 +4,16 @@ import ( "fmt" "testing" + "log" + "strings" + "time" + "github.com/hashicorp/go-multierror" "github.com/hashicorp/terraform/helper/acctest" "github.com/hashicorp/terraform/helper/resource" "github.com/hashicorp/terraform/terraform" "google.golang.org/api/composer/v1" "google.golang.org/api/storage/v1" - "log" - "strings" - "time" ) const testComposerEnvironmentPrefix = "tf-cc-testenv" @@ -274,6 +275,7 @@ resource "google_composer_environment" "test" { node_config { network = "${google_compute_network.test.self_link}" subnetwork = "${google_compute_subnetwork.test.self_link}" + zone = "us-central1-a" service_account = "${google_service_account.test.name}" } diff --git a/google-beta/resource_compute_project_metadata_item.go b/google-beta/resource_compute_project_metadata_item.go index e3d2a6071e..66b0940c0e 100644 --- a/google-beta/resource_compute_project_metadata_item.go +++ b/google-beta/resource_compute_project_metadata_item.go @@ -3,6 +3,7 @@ package google import ( "fmt" "log" + "time" "github.com/hashicorp/terraform/helper/schema" "google.golang.org/api/compute/v1" @@ -35,6 +36,12 @@ func resourceComputeProjectMetadataItem() *schema.Resource { ForceNew: true, }, }, + + Timeouts: &schema.ResourceTimeout{ + Create: schema.DefaultTimeout(5 * time.Minute), + Update: schema.DefaultTimeout(5 * time.Minute), + Delete: schema.DefaultTimeout(5 * time.Minute), + }, } } @@ -49,7 +56,7 @@ func resourceComputeProjectMetadataItemCreate(d *schema.ResourceData, meta inter key := d.Get("key").(string) val := d.Get("value").(string) - err = updateComputeCommonInstanceMetadata(config, projectID, key, &val) + err = updateComputeCommonInstanceMetadata(config, projectID, key, &val, int(d.Timeout(schema.TimeoutCreate).Minutes())) if err != nil { return err } @@ -101,7 +108,7 @@ func resourceComputeProjectMetadataItemUpdate(d *schema.ResourceData, meta inter _, n := d.GetChange("value") new := n.(string) - err = updateComputeCommonInstanceMetadata(config, projectID, key, &new) + err = updateComputeCommonInstanceMetadata(config, projectID, key, &new, int(d.Timeout(schema.TimeoutUpdate).Minutes())) if err != nil { return err } @@ -119,7 +126,7 @@ func resourceComputeProjectMetadataItemDelete(d *schema.ResourceData, meta inter key := d.Get("key").(string) - err = updateComputeCommonInstanceMetadata(config, projectID, key, nil) + err = updateComputeCommonInstanceMetadata(config, projectID, key, nil, int(d.Timeout(schema.TimeoutDelete).Minutes())) if err != nil { return err } @@ -128,7 +135,7 @@ func resourceComputeProjectMetadataItemDelete(d *schema.ResourceData, meta inter return nil } -func updateComputeCommonInstanceMetadata(config *Config, projectID string, key string, afterVal *string) error { +func updateComputeCommonInstanceMetadata(config *Config, projectID string, key string, afterVal *string, timeout int) error { updateMD := func() error { log.Printf("[DEBUG] Loading project metadata: %s", projectID) project, err := config.clientCompute.Projects.Get(projectID).Do() @@ -173,7 +180,7 @@ func updateComputeCommonInstanceMetadata(config *Config, projectID string, key s log.Printf("[DEBUG] SetCommonInstanceMetadata: %d (%s)", op.Id, op.SelfLink) - return computeOperationWait(config.clientCompute, op, project.Name, "SetCommonInstanceMetadata") + return computeOperationWaitTime(config.clientCompute, op, project.Name, "SetCommonInstanceMetadata", timeout) } return MetadataRetryWrapper(updateMD) diff --git a/google-beta/resource_compute_snapshot.go b/google-beta/resource_compute_snapshot.go index cd38ba8262..0b38f42381 100644 --- a/google-beta/resource_compute_snapshot.go +++ b/google-beta/resource_compute_snapshot.go @@ -91,9 +91,9 @@ func resourceComputeSnapshot() *schema.Resource { }, }, Timeouts: &schema.ResourceTimeout{ - Create: schema.DefaultTimeout(4 * time.Minute), - Update: schema.DefaultTimeout(4 * time.Minute), - Delete: schema.DefaultTimeout(4 * time.Minute), + Create: schema.DefaultTimeout(5 * time.Minute), + Update: schema.DefaultTimeout(5 * time.Minute), + Delete: schema.DefaultTimeout(5 * time.Minute), }, } } diff --git a/google-beta/resource_dataproc_job.go b/google-beta/resource_dataproc_job.go index 6a5ef34700..99a00d872f 100644 --- a/google-beta/resource_dataproc_job.go +++ b/google-beta/resource_dataproc_job.go @@ -251,6 +251,13 @@ func resourceDataprocJobCreate(d *schema.ResourceData, meta interface{}) error { } d.SetId(job.Reference.JobId) + timeoutInMinutes := int(d.Timeout(schema.TimeoutCreate).Minutes()) + waitErr := dataprocJobOperationWait(config, region, project, job.Reference.JobId, + "Creating Dataproc job", timeoutInMinutes, 1) + if waitErr != nil { + return waitErr + } + log.Printf("[INFO] Dataproc job %s has been submitted", job.Reference.JobId) return resourceDataprocJobRead(d, meta) } diff --git a/website/docs/r/compute_project_metadata_item.html.markdown b/website/docs/r/compute_project_metadata_item.html.markdown index f5f16bfe38..83c2070454 100644 --- a/website/docs/r/compute_project_metadata_item.html.markdown +++ b/website/docs/r/compute_project_metadata_item.html.markdown @@ -46,3 +46,12 @@ Project metadata items can be imported using the `key`, e.g. ``` $ terraform import google_compute_project_metadata_item.default my_metadata ``` + +## Timeouts + +This resource provides the following +[Timeouts](/docs/configuration/resources.html#timeouts) configuration options: + +- `create` - Default is 5 minutes. +- `update` - Default is 5 minutes. +- `delete` - Default is 5 minutes. \ No newline at end of file diff --git a/website/docs/r/compute_snapshot.html.markdown b/website/docs/r/compute_snapshot.html.markdown index 7a6e1b9b19..ed9c5c78e9 100644 --- a/website/docs/r/compute_snapshot.html.markdown +++ b/website/docs/r/compute_snapshot.html.markdown @@ -75,3 +75,12 @@ exported: * `self_link` - The URI of the created resource. * `label_fingerprint` - The unique fingerprint of the labels. + +## Timeouts + +This resource provides the following +[Timeouts](/docs/configuration/resources.html#timeouts) configuration options: + +- `create` - Default is 5 minutes. +- `update` - Default is 5 minutes. +- `delete` - Default is 5 minutes. \ No newline at end of file