From d0034fb1c0d8b489274f0c408d7acf3dfa29f2e5 Mon Sep 17 00:00:00 2001 From: Riley Karson Date: Tue, 30 Oct 2018 08:27:30 -0700 Subject: [PATCH] Remove obsolete beta files. (#2355) Remove the files we skip now with https://github.com/GoogleCloudPlatform/magic-modules/pull/631 --- google/provider_binaryauthorization_gen.go | 22 - google/provider_containeranalysis_gen.go | 21 - google/provider_filestore_gen.go | 21 - .../resource_binaryauthorization_attestor.go | 415 ------------ google/resource_binaryauthorization_policy.go | 570 ---------------- google/resource_containeranalysis_note.go | 298 --------- ...e_containeranalysis_note_generated_test.go | 57 -- google/resource_filestore_instance.go | 620 ------------------ ...ource_filestore_instance_generated_test.go | 65 -- 9 files changed, 2089 deletions(-) delete mode 100644 google/provider_binaryauthorization_gen.go delete mode 100644 google/provider_containeranalysis_gen.go delete mode 100644 google/provider_filestore_gen.go delete mode 100644 google/resource_binaryauthorization_attestor.go delete mode 100644 google/resource_binaryauthorization_policy.go delete mode 100644 google/resource_containeranalysis_note.go delete mode 100644 google/resource_containeranalysis_note_generated_test.go delete mode 100644 google/resource_filestore_instance.go delete mode 100644 google/resource_filestore_instance_generated_test.go diff --git a/google/provider_binaryauthorization_gen.go b/google/provider_binaryauthorization_gen.go deleted file mode 100644 index 4041d0fe..00000000 --- a/google/provider_binaryauthorization_gen.go +++ /dev/null @@ -1,22 +0,0 @@ -// ---------------------------------------------------------------------------- -// -// *** AUTO GENERATED CODE *** AUTO GENERATED CODE *** -// -// ---------------------------------------------------------------------------- -// -// This file is automatically generated by Magic Modules and manual -// changes will be clobbered when the file is regenerated. -// -// Please read more about how to change this file in -// .github/CONTRIBUTING.md. -// -// ---------------------------------------------------------------------------- - -package google - -import "github.com/hashicorp/terraform/helper/schema" - -var GeneratedBinaryAuthorizationResourcesMap = map[string]*schema.Resource{ - "google_binary_authorization_attestor": resourceBinaryAuthorizationAttestor(), - "google_binary_authorization_policy": resourceBinaryAuthorizationPolicy(), -} diff --git a/google/provider_containeranalysis_gen.go b/google/provider_containeranalysis_gen.go deleted file mode 100644 index 624fadbd..00000000 --- a/google/provider_containeranalysis_gen.go +++ /dev/null @@ -1,21 +0,0 @@ -// ---------------------------------------------------------------------------- -// -// *** AUTO GENERATED CODE *** AUTO GENERATED CODE *** -// -// ---------------------------------------------------------------------------- -// -// This file is automatically generated by Magic Modules and manual -// changes will be clobbered when the file is regenerated. -// -// Please read more about how to change this file in -// .github/CONTRIBUTING.md. -// -// ---------------------------------------------------------------------------- - -package google - -import "github.com/hashicorp/terraform/helper/schema" - -var GeneratedContainerAnalysisResourcesMap = map[string]*schema.Resource{ - "google_container_analysis_note": resourceContainerAnalysisNote(), -} diff --git a/google/provider_filestore_gen.go b/google/provider_filestore_gen.go deleted file mode 100644 index 7bf114b2..00000000 --- a/google/provider_filestore_gen.go +++ /dev/null @@ -1,21 +0,0 @@ -// ---------------------------------------------------------------------------- -// -// *** AUTO GENERATED CODE *** AUTO GENERATED CODE *** -// -// ---------------------------------------------------------------------------- -// -// This file is automatically generated by Magic Modules and manual -// changes will be clobbered when the file is regenerated. -// -// Please read more about how to change this file in -// .github/CONTRIBUTING.md. -// -// ---------------------------------------------------------------------------- - -package google - -import "github.com/hashicorp/terraform/helper/schema" - -var GeneratedFilestoreResourcesMap = map[string]*schema.Resource{ - "google_filestore_instance": resourceFilestoreInstance(), -} diff --git a/google/resource_binaryauthorization_attestor.go b/google/resource_binaryauthorization_attestor.go deleted file mode 100644 index 2948b3b9..00000000 --- a/google/resource_binaryauthorization_attestor.go +++ /dev/null @@ -1,415 +0,0 @@ -// ---------------------------------------------------------------------------- -// -// *** AUTO GENERATED CODE *** AUTO GENERATED CODE *** -// -// ---------------------------------------------------------------------------- -// -// This file is automatically generated by Magic Modules and manual -// changes will be clobbered when the file is regenerated. -// -// Please read more about how to change this file in -// .github/CONTRIBUTING.md. -// -// ---------------------------------------------------------------------------- - -package google - -import ( - "fmt" - "log" - "reflect" - "regexp" - - "github.com/hashicorp/terraform/helper/schema" -) - -func resourceBinaryAuthorizationAttestor() *schema.Resource { - return &schema.Resource{ - Create: resourceBinaryAuthorizationAttestorCreate, - Read: resourceBinaryAuthorizationAttestorRead, - Update: resourceBinaryAuthorizationAttestorUpdate, - Delete: resourceBinaryAuthorizationAttestorDelete, - - Importer: &schema.ResourceImporter{ - State: resourceBinaryAuthorizationAttestorImport, - }, - DeprecationMessage: `This resource is in beta and will be removed from this provider. -Use the BinaryAuthorizationAttestor resource in the terraform-provider-google-beta provider to continue using it. -See https://terraform.io/docs/providers/google/provider_versions.html for more details on beta resources.`, - - Schema: map[string]*schema.Schema{ - "attestation_authority_note": { - Type: schema.TypeList, - Required: true, - MaxItems: 1, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ - "note_reference": { - Type: schema.TypeString, - Required: true, - ForceNew: true, - DiffSuppressFunc: compareSelfLinkOrResourceName, - }, - "public_keys": { - Type: schema.TypeList, - Optional: true, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ - "ascii_armored_pgp_public_key": { - Type: schema.TypeString, - Required: true, - }, - "comment": { - Type: schema.TypeString, - Optional: true, - }, - "id": { - Type: schema.TypeString, - Computed: true, - }, - }, - }, - }, - "delegation_service_account_email": { - Type: schema.TypeString, - Computed: true, - }, - }, - }, - }, - "name": { - Type: schema.TypeString, - Required: true, - ForceNew: true, - }, - "description": { - Type: schema.TypeString, - Optional: true, - }, - "project": { - Type: schema.TypeString, - Optional: true, - Computed: true, - ForceNew: true, - }, - }, - } -} - -func resourceBinaryAuthorizationAttestorCreate(d *schema.ResourceData, meta interface{}) error { - config := meta.(*Config) - - obj := make(map[string]interface{}) - nameProp, err := expandBinaryAuthorizationAttestorName(d.Get("name"), d, config) - if err != nil { - return err - } else if v, ok := d.GetOkExists("name"); !isEmptyValue(reflect.ValueOf(nameProp)) && (ok || !reflect.DeepEqual(v, nameProp)) { - obj["name"] = nameProp - } - descriptionProp, err := expandBinaryAuthorizationAttestorDescription(d.Get("description"), d, config) - if err != nil { - return err - } else if v, ok := d.GetOkExists("description"); !isEmptyValue(reflect.ValueOf(descriptionProp)) && (ok || !reflect.DeepEqual(v, descriptionProp)) { - obj["description"] = descriptionProp - } - userOwnedDrydockNoteProp, err := expandBinaryAuthorizationAttestorAttestationAuthorityNote(d.Get("attestation_authority_note"), d, config) - if err != nil { - return err - } else if v, ok := d.GetOkExists("attestation_authority_note"); !isEmptyValue(reflect.ValueOf(userOwnedDrydockNoteProp)) && (ok || !reflect.DeepEqual(v, userOwnedDrydockNoteProp)) { - obj["userOwnedDrydockNote"] = userOwnedDrydockNoteProp - } - - url, err := replaceVars(d, config, "https://binaryauthorization.googleapis.com/v1beta1/projects/{{project}}/attestors?attestorId={{name}}") - if err != nil { - return err - } - - log.Printf("[DEBUG] Creating new Attestor: %#v", obj) - res, err := sendRequest(config, "POST", url, obj) - if err != nil { - return fmt.Errorf("Error creating Attestor: %s", err) - } - - // Store the ID now - id, err := replaceVars(d, config, "{{name}}") - if err != nil { - return fmt.Errorf("Error constructing id: %s", err) - } - d.SetId(id) - - log.Printf("[DEBUG] Finished creating Attestor %q: %#v", d.Id(), res) - - return resourceBinaryAuthorizationAttestorRead(d, meta) -} - -func resourceBinaryAuthorizationAttestorRead(d *schema.ResourceData, meta interface{}) error { - config := meta.(*Config) - - url, err := replaceVars(d, config, "https://binaryauthorization.googleapis.com/v1beta1/projects/{{project}}/attestors/{{name}}") - if err != nil { - return err - } - - res, err := sendRequest(config, "GET", url, nil) - if err != nil { - return handleNotFoundError(err, d, fmt.Sprintf("BinaryAuthorizationAttestor %q", d.Id())) - } - - if err := d.Set("name", flattenBinaryAuthorizationAttestorName(res["name"])); err != nil { - return fmt.Errorf("Error reading Attestor: %s", err) - } - if err := d.Set("description", flattenBinaryAuthorizationAttestorDescription(res["description"])); err != nil { - return fmt.Errorf("Error reading Attestor: %s", err) - } - if err := d.Set("attestation_authority_note", flattenBinaryAuthorizationAttestorAttestationAuthorityNote(res["userOwnedDrydockNote"])); err != nil { - return fmt.Errorf("Error reading Attestor: %s", err) - } - project, err := getProject(d, config) - if err != nil { - return err - } - if err := d.Set("project", project); err != nil { - return fmt.Errorf("Error reading Attestor: %s", err) - } - - return nil -} - -func resourceBinaryAuthorizationAttestorUpdate(d *schema.ResourceData, meta interface{}) error { - config := meta.(*Config) - - obj := make(map[string]interface{}) - nameProp, err := expandBinaryAuthorizationAttestorName(d.Get("name"), d, config) - if err != nil { - return err - } else if v, ok := d.GetOkExists("name"); !isEmptyValue(reflect.ValueOf(v)) && (ok || !reflect.DeepEqual(v, nameProp)) { - obj["name"] = nameProp - } - descriptionProp, err := expandBinaryAuthorizationAttestorDescription(d.Get("description"), d, config) - if err != nil { - return err - } else if v, ok := d.GetOkExists("description"); !isEmptyValue(reflect.ValueOf(v)) && (ok || !reflect.DeepEqual(v, descriptionProp)) { - obj["description"] = descriptionProp - } - userOwnedDrydockNoteProp, err := expandBinaryAuthorizationAttestorAttestationAuthorityNote(d.Get("attestation_authority_note"), d, config) - if err != nil { - return err - } else if v, ok := d.GetOkExists("attestation_authority_note"); !isEmptyValue(reflect.ValueOf(v)) && (ok || !reflect.DeepEqual(v, userOwnedDrydockNoteProp)) { - obj["userOwnedDrydockNote"] = userOwnedDrydockNoteProp - } - - url, err := replaceVars(d, config, "https://binaryauthorization.googleapis.com/v1beta1/projects/{{project}}/attestors/{{name}}") - if err != nil { - return err - } - - log.Printf("[DEBUG] Updating Attestor %q: %#v", d.Id(), obj) - _, err = sendRequest(config, "PUT", url, obj) - - if err != nil { - return fmt.Errorf("Error updating Attestor %q: %s", d.Id(), err) - } - - return resourceBinaryAuthorizationAttestorRead(d, meta) -} - -func resourceBinaryAuthorizationAttestorDelete(d *schema.ResourceData, meta interface{}) error { - config := meta.(*Config) - - url, err := replaceVars(d, config, "https://binaryauthorization.googleapis.com/v1beta1/projects/{{project}}/attestors/{{name}}") - if err != nil { - return err - } - - var obj map[string]interface{} - log.Printf("[DEBUG] Deleting Attestor %q", d.Id()) - res, err := sendRequest(config, "DELETE", url, obj) - if err != nil { - return handleNotFoundError(err, d, "Attestor") - } - - log.Printf("[DEBUG] Finished deleting Attestor %q: %#v", d.Id(), res) - return nil -} - -func resourceBinaryAuthorizationAttestorImport(d *schema.ResourceData, meta interface{}) ([]*schema.ResourceData, error) { - config := meta.(*Config) - parseImportId([]string{"projects/(?P[^/]+)/attestors/(?P[^/]+)", "(?P[^/]+)/(?P[^/]+)", "(?P[^/]+)"}, d, config) - - // Replace import id for the resource id - id, err := replaceVars(d, config, "{{name}}") - if err != nil { - return nil, fmt.Errorf("Error constructing id: %s", err) - } - d.SetId(id) - - return []*schema.ResourceData{d}, nil -} - -func flattenBinaryAuthorizationAttestorName(v interface{}) interface{} { - if v == nil { - return v - } - return NameFromSelfLinkStateFunc(v) -} - -func flattenBinaryAuthorizationAttestorDescription(v interface{}) interface{} { - return v -} - -func flattenBinaryAuthorizationAttestorAttestationAuthorityNote(v interface{}) interface{} { - if v == nil { - return nil - } - original := v.(map[string]interface{}) - transformed := make(map[string]interface{}) - transformed["note_reference"] = - flattenBinaryAuthorizationAttestorAttestationAuthorityNoteNoteReference(original["noteReference"]) - transformed["public_keys"] = - flattenBinaryAuthorizationAttestorAttestationAuthorityNotePublicKeys(original["publicKeys"]) - transformed["delegation_service_account_email"] = - flattenBinaryAuthorizationAttestorAttestationAuthorityNoteDelegationServiceAccountEmail(original["delegationServiceAccountEmail"]) - return []interface{}{transformed} -} -func flattenBinaryAuthorizationAttestorAttestationAuthorityNoteNoteReference(v interface{}) interface{} { - return v -} - -func flattenBinaryAuthorizationAttestorAttestationAuthorityNotePublicKeys(v interface{}) interface{} { - if v == nil { - return v - } - l := v.([]interface{}) - transformed := make([]interface{}, 0, len(l)) - for _, raw := range l { - original := raw.(map[string]interface{}) - transformed = append(transformed, map[string]interface{}{ - "comment": flattenBinaryAuthorizationAttestorAttestationAuthorityNotePublicKeysComment(original["comment"]), - "id": flattenBinaryAuthorizationAttestorAttestationAuthorityNotePublicKeysId(original["id"]), - "ascii_armored_pgp_public_key": flattenBinaryAuthorizationAttestorAttestationAuthorityNotePublicKeysAsciiArmoredPgpPublicKey(original["asciiArmoredPgpPublicKey"]), - }) - } - return transformed -} -func flattenBinaryAuthorizationAttestorAttestationAuthorityNotePublicKeysComment(v interface{}) interface{} { - return v -} - -func flattenBinaryAuthorizationAttestorAttestationAuthorityNotePublicKeysId(v interface{}) interface{} { - return v -} - -func flattenBinaryAuthorizationAttestorAttestationAuthorityNotePublicKeysAsciiArmoredPgpPublicKey(v interface{}) interface{} { - return v -} - -func flattenBinaryAuthorizationAttestorAttestationAuthorityNoteDelegationServiceAccountEmail(v interface{}) interface{} { - return v -} - -func expandBinaryAuthorizationAttestorName(v interface{}, d *schema.ResourceData, config *Config) (interface{}, error) { - return v, nil -} - -func expandBinaryAuthorizationAttestorDescription(v interface{}, d *schema.ResourceData, config *Config) (interface{}, error) { - return v, nil -} - -func expandBinaryAuthorizationAttestorAttestationAuthorityNote(v interface{}, d *schema.ResourceData, config *Config) (interface{}, error) { - l := v.([]interface{}) - if len(l) == 0 || l[0] == nil { - return nil, nil - } - raw := l[0] - original := raw.(map[string]interface{}) - transformed := make(map[string]interface{}) - - transformedNoteReference, err := expandBinaryAuthorizationAttestorAttestationAuthorityNoteNoteReference(original["note_reference"], d, config) - if err != nil { - return nil, err - } else if val := reflect.ValueOf(transformedNoteReference); val.IsValid() && !isEmptyValue(val) { - transformed["noteReference"] = transformedNoteReference - } - - transformedPublicKeys, err := expandBinaryAuthorizationAttestorAttestationAuthorityNotePublicKeys(original["public_keys"], d, config) - if err != nil { - return nil, err - } else if val := reflect.ValueOf(transformedPublicKeys); val.IsValid() && !isEmptyValue(val) { - transformed["publicKeys"] = transformedPublicKeys - } - - transformedDelegationServiceAccountEmail, err := expandBinaryAuthorizationAttestorAttestationAuthorityNoteDelegationServiceAccountEmail(original["delegation_service_account_email"], d, config) - if err != nil { - return nil, err - } else if val := reflect.ValueOf(transformedDelegationServiceAccountEmail); val.IsValid() && !isEmptyValue(val) { - transformed["delegationServiceAccountEmail"] = transformedDelegationServiceAccountEmail - } - - return transformed, nil -} - -func expandBinaryAuthorizationAttestorAttestationAuthorityNoteNoteReference(v interface{}, d *schema.ResourceData, config *Config) (interface{}, error) { - r := regexp.MustCompile("projects/(.+)/notes/(.+)") - if r.MatchString(v.(string)) { - return v.(string), nil - } - - project, err := getProject(d, config) - if err != nil { - return nil, err - } - - return fmt.Sprintf("projects/%s/notes/%s", project, v.(string)), nil -} - -func expandBinaryAuthorizationAttestorAttestationAuthorityNotePublicKeys(v interface{}, d *schema.ResourceData, config *Config) (interface{}, error) { - l := v.([]interface{}) - req := make([]interface{}, 0, len(l)) - for _, raw := range l { - if raw == nil { - continue - } - original := raw.(map[string]interface{}) - transformed := make(map[string]interface{}) - - transformedComment, err := expandBinaryAuthorizationAttestorAttestationAuthorityNotePublicKeysComment(original["comment"], d, config) - if err != nil { - return nil, err - } else if val := reflect.ValueOf(transformedComment); val.IsValid() && !isEmptyValue(val) { - transformed["comment"] = transformedComment - } - - transformedId, err := expandBinaryAuthorizationAttestorAttestationAuthorityNotePublicKeysId(original["id"], d, config) - if err != nil { - return nil, err - } else if val := reflect.ValueOf(transformedId); val.IsValid() && !isEmptyValue(val) { - transformed["id"] = transformedId - } - - transformedAsciiArmoredPgpPublicKey, err := expandBinaryAuthorizationAttestorAttestationAuthorityNotePublicKeysAsciiArmoredPgpPublicKey(original["ascii_armored_pgp_public_key"], d, config) - if err != nil { - return nil, err - } else if val := reflect.ValueOf(transformedAsciiArmoredPgpPublicKey); val.IsValid() && !isEmptyValue(val) { - transformed["asciiArmoredPgpPublicKey"] = transformedAsciiArmoredPgpPublicKey - } - - req = append(req, transformed) - } - return req, nil -} - -func expandBinaryAuthorizationAttestorAttestationAuthorityNotePublicKeysComment(v interface{}, d *schema.ResourceData, config *Config) (interface{}, error) { - return v, nil -} - -func expandBinaryAuthorizationAttestorAttestationAuthorityNotePublicKeysId(v interface{}, d *schema.ResourceData, config *Config) (interface{}, error) { - return v, nil -} - -func expandBinaryAuthorizationAttestorAttestationAuthorityNotePublicKeysAsciiArmoredPgpPublicKey(v interface{}, d *schema.ResourceData, config *Config) (interface{}, error) { - return v, nil -} - -func expandBinaryAuthorizationAttestorAttestationAuthorityNoteDelegationServiceAccountEmail(v interface{}, d *schema.ResourceData, config *Config) (interface{}, error) { - return v, nil -} diff --git a/google/resource_binaryauthorization_policy.go b/google/resource_binaryauthorization_policy.go deleted file mode 100644 index fcac616f..00000000 --- a/google/resource_binaryauthorization_policy.go +++ /dev/null @@ -1,570 +0,0 @@ -// ---------------------------------------------------------------------------- -// -// *** AUTO GENERATED CODE *** AUTO GENERATED CODE *** -// -// ---------------------------------------------------------------------------- -// -// This file is automatically generated by Magic Modules and manual -// changes will be clobbered when the file is regenerated. -// -// Please read more about how to change this file in -// .github/CONTRIBUTING.md. -// -// ---------------------------------------------------------------------------- - -package google - -import ( - "bytes" - "fmt" - "log" - "reflect" - "regexp" - - "github.com/hashicorp/terraform/helper/hashcode" - "github.com/hashicorp/terraform/helper/schema" - "github.com/hashicorp/terraform/helper/validation" -) - -func defaultBinaryAuthorizationPolicy(project string) map[string]interface{} { - return map[string]interface{}{ - "name": fmt.Sprintf("projects/%s/policy", project), - "admissionWhitelistPatterns": []interface{}{ - map[string]interface{}{ - "namePattern": "gcr.io/google_containers/*", - }, - }, - "defaultAdmissionRule": map[string]interface{}{ - "evaluationMode": "ALWAYS_ALLOW", - "enforcementMode": "ENFORCED_BLOCK_AND_AUDIT_LOG", - }, - } -} - -func resourceBinaryAuthorizationPolicy() *schema.Resource { - return &schema.Resource{ - Create: resourceBinaryAuthorizationPolicyCreate, - Read: resourceBinaryAuthorizationPolicyRead, - Update: resourceBinaryAuthorizationPolicyUpdate, - Delete: resourceBinaryAuthorizationPolicyDelete, - - Importer: &schema.ResourceImporter{ - State: resourceBinaryAuthorizationPolicyImport, - }, - DeprecationMessage: `This resource is in beta and will be removed from this provider. -Use the BinaryAuthorizationPolicy resource in the terraform-provider-google-beta provider to continue using it. -See https://terraform.io/docs/providers/google/provider_versions.html for more details on beta resources.`, - - Schema: map[string]*schema.Schema{ - "default_admission_rule": { - Type: schema.TypeList, - Required: true, - MaxItems: 1, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ - "enforcement_mode": { - Type: schema.TypeString, - Required: true, - ValidateFunc: validation.StringInSlice([]string{"ENFORCED_BLOCK_AND_AUDIT_LOG", "DRYRUN_AUDIT_LOG_ONLY"}, false), - }, - "evaluation_mode": { - Type: schema.TypeString, - Required: true, - ValidateFunc: validation.StringInSlice([]string{"ALWAYS_ALLOW", "REQUIRE_ATTESTATION", "ALWAYS_DENY"}, false), - }, - "require_attestations_by": { - Type: schema.TypeSet, - Optional: true, - DiffSuppressFunc: compareSelfLinkOrResourceName, - Elem: &schema.Schema{ - Type: schema.TypeString, - }, - Set: selfLinkNameHash, - }, - }, - }, - }, - "admission_whitelist_patterns": { - Type: schema.TypeList, - Optional: true, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ - "name_pattern": { - Type: schema.TypeString, - Optional: true, - }, - }, - }, - }, - "cluster_admission_rules": { - Type: schema.TypeSet, - Optional: true, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ - "cluster": { - Type: schema.TypeString, - Required: true, - }, - "enforcement_mode": { - Type: schema.TypeString, - Optional: true, - ValidateFunc: validation.StringInSlice([]string{"ENFORCED_BLOCK_AND_AUDIT_LOG", "DRYRUN_AUDIT_LOG_ONLY", ""}, false), - }, - "evaluation_mode": { - Type: schema.TypeString, - Optional: true, - ValidateFunc: validation.StringInSlice([]string{"ALWAYS_ALLOW", "REQUIRE_ATTESTATION", "ALWAYS_DENY", ""}, false), - }, - "require_attestations_by": { - Type: schema.TypeSet, - Optional: true, - DiffSuppressFunc: compareSelfLinkOrResourceName, - Elem: &schema.Schema{ - Type: schema.TypeString, - }, - Set: selfLinkNameHash, - }, - }, - }, - Set: func(v interface{}) int { - // require_attestations_by is a set of strings that can have the format - // projects/{project}/attestors/{attestor} or {attestor}. We diffsuppress - // and hash that set on the name, but now we need to make sure that the - // overall hash here respects that so changing the attestor format doesn't - // change the hash code of cluster_admission_rules. - raw := v.(map[string]interface{}) - at := raw["require_attestations_by"].(*schema.Set) - if at != nil { - t := convertAndMapStringArr(at.List(), GetResourceNameFromSelfLink) - raw["require_attestations_by"] = schema.NewSet(selfLinkNameHash, convertStringArrToInterface(t)) - } - var buf bytes.Buffer - schema.SerializeResourceForHash(&buf, raw, resourceBinaryAuthorizationPolicy().Schema["cluster_admission_rules"].Elem.(*schema.Resource)) - return hashcode.String(buf.String()) - }, - }, - "description": { - Type: schema.TypeString, - Optional: true, - }, - "project": { - Type: schema.TypeString, - Optional: true, - Computed: true, - ForceNew: true, - }, - }, - } -} - -func resourceBinaryAuthorizationPolicyCreate(d *schema.ResourceData, meta interface{}) error { - config := meta.(*Config) - - obj := make(map[string]interface{}) - descriptionProp, err := expandBinaryAuthorizationPolicyDescription(d.Get("description"), d, config) - if err != nil { - return err - } else if v, ok := d.GetOkExists("description"); !isEmptyValue(reflect.ValueOf(descriptionProp)) && (ok || !reflect.DeepEqual(v, descriptionProp)) { - obj["description"] = descriptionProp - } - admissionWhitelistPatternsProp, err := expandBinaryAuthorizationPolicyAdmissionWhitelistPatterns(d.Get("admission_whitelist_patterns"), d, config) - if err != nil { - return err - } else if v, ok := d.GetOkExists("admission_whitelist_patterns"); !isEmptyValue(reflect.ValueOf(admissionWhitelistPatternsProp)) && (ok || !reflect.DeepEqual(v, admissionWhitelistPatternsProp)) { - obj["admissionWhitelistPatterns"] = admissionWhitelistPatternsProp - } - clusterAdmissionRulesProp, err := expandBinaryAuthorizationPolicyClusterAdmissionRules(d.Get("cluster_admission_rules"), d, config) - if err != nil { - return err - } else if v, ok := d.GetOkExists("cluster_admission_rules"); !isEmptyValue(reflect.ValueOf(clusterAdmissionRulesProp)) && (ok || !reflect.DeepEqual(v, clusterAdmissionRulesProp)) { - obj["clusterAdmissionRules"] = clusterAdmissionRulesProp - } - defaultAdmissionRuleProp, err := expandBinaryAuthorizationPolicyDefaultAdmissionRule(d.Get("default_admission_rule"), d, config) - if err != nil { - return err - } else if v, ok := d.GetOkExists("default_admission_rule"); !isEmptyValue(reflect.ValueOf(defaultAdmissionRuleProp)) && (ok || !reflect.DeepEqual(v, defaultAdmissionRuleProp)) { - obj["defaultAdmissionRule"] = defaultAdmissionRuleProp - } - - url, err := replaceVars(d, config, "https://binaryauthorization.googleapis.com/v1beta1/projects/{{project}}/policy") - if err != nil { - return err - } - - log.Printf("[DEBUG] Creating new Policy: %#v", obj) - res, err := sendRequest(config, "PUT", url, obj) - if err != nil { - return fmt.Errorf("Error creating Policy: %s", err) - } - - // Store the ID now - id, err := replaceVars(d, config, "{{project}}") - if err != nil { - return fmt.Errorf("Error constructing id: %s", err) - } - d.SetId(id) - - log.Printf("[DEBUG] Finished creating Policy %q: %#v", d.Id(), res) - - return resourceBinaryAuthorizationPolicyRead(d, meta) -} - -func resourceBinaryAuthorizationPolicyRead(d *schema.ResourceData, meta interface{}) error { - config := meta.(*Config) - - url, err := replaceVars(d, config, "https://binaryauthorization.googleapis.com/v1beta1/projects/{{project}}/policy") - if err != nil { - return err - } - - res, err := sendRequest(config, "GET", url, nil) - if err != nil { - return handleNotFoundError(err, d, fmt.Sprintf("BinaryAuthorizationPolicy %q", d.Id())) - } - - if err := d.Set("description", flattenBinaryAuthorizationPolicyDescription(res["description"])); err != nil { - return fmt.Errorf("Error reading Policy: %s", err) - } - if err := d.Set("admission_whitelist_patterns", flattenBinaryAuthorizationPolicyAdmissionWhitelistPatterns(res["admissionWhitelistPatterns"])); err != nil { - return fmt.Errorf("Error reading Policy: %s", err) - } - if err := d.Set("cluster_admission_rules", flattenBinaryAuthorizationPolicyClusterAdmissionRules(res["clusterAdmissionRules"])); err != nil { - return fmt.Errorf("Error reading Policy: %s", err) - } - if err := d.Set("default_admission_rule", flattenBinaryAuthorizationPolicyDefaultAdmissionRule(res["defaultAdmissionRule"])); err != nil { - return fmt.Errorf("Error reading Policy: %s", err) - } - project, err := getProject(d, config) - if err != nil { - return err - } - if err := d.Set("project", project); err != nil { - return fmt.Errorf("Error reading Policy: %s", err) - } - - return nil -} - -func resourceBinaryAuthorizationPolicyUpdate(d *schema.ResourceData, meta interface{}) error { - config := meta.(*Config) - - obj := make(map[string]interface{}) - descriptionProp, err := expandBinaryAuthorizationPolicyDescription(d.Get("description"), d, config) - if err != nil { - return err - } else if v, ok := d.GetOkExists("description"); !isEmptyValue(reflect.ValueOf(v)) && (ok || !reflect.DeepEqual(v, descriptionProp)) { - obj["description"] = descriptionProp - } - admissionWhitelistPatternsProp, err := expandBinaryAuthorizationPolicyAdmissionWhitelistPatterns(d.Get("admission_whitelist_patterns"), d, config) - if err != nil { - return err - } else if v, ok := d.GetOkExists("admission_whitelist_patterns"); !isEmptyValue(reflect.ValueOf(v)) && (ok || !reflect.DeepEqual(v, admissionWhitelistPatternsProp)) { - obj["admissionWhitelistPatterns"] = admissionWhitelistPatternsProp - } - clusterAdmissionRulesProp, err := expandBinaryAuthorizationPolicyClusterAdmissionRules(d.Get("cluster_admission_rules"), d, config) - if err != nil { - return err - } else if v, ok := d.GetOkExists("cluster_admission_rules"); !isEmptyValue(reflect.ValueOf(v)) && (ok || !reflect.DeepEqual(v, clusterAdmissionRulesProp)) { - obj["clusterAdmissionRules"] = clusterAdmissionRulesProp - } - defaultAdmissionRuleProp, err := expandBinaryAuthorizationPolicyDefaultAdmissionRule(d.Get("default_admission_rule"), d, config) - if err != nil { - return err - } else if v, ok := d.GetOkExists("default_admission_rule"); !isEmptyValue(reflect.ValueOf(v)) && (ok || !reflect.DeepEqual(v, defaultAdmissionRuleProp)) { - obj["defaultAdmissionRule"] = defaultAdmissionRuleProp - } - - url, err := replaceVars(d, config, "https://binaryauthorization.googleapis.com/v1beta1/projects/{{project}}/policy") - if err != nil { - return err - } - - log.Printf("[DEBUG] Updating Policy %q: %#v", d.Id(), obj) - _, err = sendRequest(config, "PUT", url, obj) - - if err != nil { - return fmt.Errorf("Error updating Policy %q: %s", d.Id(), err) - } - - return resourceBinaryAuthorizationPolicyRead(d, meta) -} - -func resourceBinaryAuthorizationPolicyDelete(d *schema.ResourceData, meta interface{}) error { - config := meta.(*Config) - - url, err := replaceVars(d, config, "https://binaryauthorization.googleapis.com/v1beta1/projects/{{project}}/policy") - if err != nil { - return err - } - - var obj map[string]interface{} - obj = defaultBinaryAuthorizationPolicy(d.Get("project").(string)) - log.Printf("[DEBUG] Deleting Policy %q", d.Id()) - res, err := sendRequest(config, "PUT", url, obj) - if err != nil { - return handleNotFoundError(err, d, "Policy") - } - - log.Printf("[DEBUG] Finished deleting Policy %q: %#v", d.Id(), res) - return nil -} - -func resourceBinaryAuthorizationPolicyImport(d *schema.ResourceData, meta interface{}) ([]*schema.ResourceData, error) { - config := meta.(*Config) - parseImportId([]string{"projects/(?P[^/]+)", "(?P[^/]+)"}, d, config) - - // Replace import id for the resource id - id, err := replaceVars(d, config, "{{project}}") - if err != nil { - return nil, fmt.Errorf("Error constructing id: %s", err) - } - d.SetId(id) - - return []*schema.ResourceData{d}, nil -} - -func flattenBinaryAuthorizationPolicyDescription(v interface{}) interface{} { - return v -} - -func flattenBinaryAuthorizationPolicyAdmissionWhitelistPatterns(v interface{}) interface{} { - if v == nil { - return v - } - l := v.([]interface{}) - transformed := make([]interface{}, 0, len(l)) - for _, raw := range l { - original := raw.(map[string]interface{}) - transformed = append(transformed, map[string]interface{}{ - "name_pattern": flattenBinaryAuthorizationPolicyAdmissionWhitelistPatternsNamePattern(original["namePattern"]), - }) - } - return transformed -} -func flattenBinaryAuthorizationPolicyAdmissionWhitelistPatternsNamePattern(v interface{}) interface{} { - return v -} - -func flattenBinaryAuthorizationPolicyClusterAdmissionRules(v interface{}) interface{} { - if v == nil { - return v - } - l := v.(map[string]interface{}) - transformed := make([]interface{}, 0, len(l)) - for k, raw := range l { - original := raw.(map[string]interface{}) - transformed = append(transformed, map[string]interface{}{ - "cluster": k, - "evaluation_mode": flattenBinaryAuthorizationPolicyClusterAdmissionRulesEvaluationMode(original["evaluationMode"]), - "require_attestations_by": flattenBinaryAuthorizationPolicyClusterAdmissionRulesRequireAttestationsBy(original["requireAttestationsBy"]), - "enforcement_mode": flattenBinaryAuthorizationPolicyClusterAdmissionRulesEnforcementMode(original["enforcementMode"]), - }) - } - return transformed -} -func flattenBinaryAuthorizationPolicyClusterAdmissionRulesEvaluationMode(v interface{}) interface{} { - return v -} - -func flattenBinaryAuthorizationPolicyClusterAdmissionRulesRequireAttestationsBy(v interface{}) interface{} { - if v == nil { - return v - } - return schema.NewSet(selfLinkNameHash, v.([]interface{})) -} - -func flattenBinaryAuthorizationPolicyClusterAdmissionRulesEnforcementMode(v interface{}) interface{} { - return v -} - -func flattenBinaryAuthorizationPolicyDefaultAdmissionRule(v interface{}) interface{} { - if v == nil { - return nil - } - original := v.(map[string]interface{}) - transformed := make(map[string]interface{}) - transformed["evaluation_mode"] = - flattenBinaryAuthorizationPolicyDefaultAdmissionRuleEvaluationMode(original["evaluationMode"]) - transformed["require_attestations_by"] = - flattenBinaryAuthorizationPolicyDefaultAdmissionRuleRequireAttestationsBy(original["requireAttestationsBy"]) - transformed["enforcement_mode"] = - flattenBinaryAuthorizationPolicyDefaultAdmissionRuleEnforcementMode(original["enforcementMode"]) - return []interface{}{transformed} -} -func flattenBinaryAuthorizationPolicyDefaultAdmissionRuleEvaluationMode(v interface{}) interface{} { - return v -} - -func flattenBinaryAuthorizationPolicyDefaultAdmissionRuleRequireAttestationsBy(v interface{}) interface{} { - if v == nil { - return v - } - return schema.NewSet(selfLinkNameHash, v.([]interface{})) -} - -func flattenBinaryAuthorizationPolicyDefaultAdmissionRuleEnforcementMode(v interface{}) interface{} { - return v -} - -func expandBinaryAuthorizationPolicyDescription(v interface{}, d *schema.ResourceData, config *Config) (interface{}, error) { - return v, nil -} - -func expandBinaryAuthorizationPolicyAdmissionWhitelistPatterns(v interface{}, d *schema.ResourceData, config *Config) (interface{}, error) { - l := v.([]interface{}) - req := make([]interface{}, 0, len(l)) - for _, raw := range l { - if raw == nil { - continue - } - original := raw.(map[string]interface{}) - transformed := make(map[string]interface{}) - - transformedNamePattern, err := expandBinaryAuthorizationPolicyAdmissionWhitelistPatternsNamePattern(original["name_pattern"], d, config) - if err != nil { - return nil, err - } else if val := reflect.ValueOf(transformedNamePattern); val.IsValid() && !isEmptyValue(val) { - transformed["namePattern"] = transformedNamePattern - } - - req = append(req, transformed) - } - return req, nil -} - -func expandBinaryAuthorizationPolicyAdmissionWhitelistPatternsNamePattern(v interface{}, d *schema.ResourceData, config *Config) (interface{}, error) { - return v, nil -} - -func expandBinaryAuthorizationPolicyClusterAdmissionRules(v interface{}, d *schema.ResourceData, config *Config) (map[string]interface{}, error) { - if v == nil { - return map[string]interface{}{}, nil - } - m := make(map[string]interface{}) - for _, raw := range v.(*schema.Set).List() { - original := raw.(map[string]interface{}) - transformed := make(map[string]interface{}) - - transformedEvaluationMode, err := expandBinaryAuthorizationPolicyClusterAdmissionRulesEvaluationMode(original["evaluation_mode"], d, config) - if err != nil { - return nil, err - } - transformed["evaluationMode"] = transformedEvaluationMode - transformedRequireAttestationsBy, err := expandBinaryAuthorizationPolicyClusterAdmissionRulesRequireAttestationsBy(original["require_attestations_by"], d, config) - if err != nil { - return nil, err - } - transformed["requireAttestationsBy"] = transformedRequireAttestationsBy - transformedEnforcementMode, err := expandBinaryAuthorizationPolicyClusterAdmissionRulesEnforcementMode(original["enforcement_mode"], d, config) - if err != nil { - return nil, err - } - transformed["enforcementMode"] = transformedEnforcementMode - - m[original["cluster"].(string)] = transformed - } - return m, nil -} - -func expandBinaryAuthorizationPolicyClusterAdmissionRulesEvaluationMode(v interface{}, d *schema.ResourceData, config *Config) (interface{}, error) { - return v, nil -} - -func expandBinaryAuthorizationPolicyClusterAdmissionRulesRequireAttestationsBy(v interface{}, d *schema.ResourceData, config *Config) (interface{}, error) { - r := regexp.MustCompile("projects/(.+)/attestors/(.+)") - - // It's possible that all entries in the list will specify a project, in - // which case the user wouldn't necessarily have to specify a provider - // project. - var project string - var err error - for _, s := range v.(*schema.Set).List() { - if !r.MatchString(s.(string)) { - project, err = getProject(d, config) - if err != nil { - return []interface{}{}, err - } - break - } - } - - return convertAndMapStringArr(v.(*schema.Set).List(), func(s string) string { - if r.MatchString(s) { - return s - } - - return fmt.Sprintf("projects/%s/attestors/%s", project, s) - }), nil -} - -func expandBinaryAuthorizationPolicyClusterAdmissionRulesEnforcementMode(v interface{}, d *schema.ResourceData, config *Config) (interface{}, error) { - return v, nil -} - -func expandBinaryAuthorizationPolicyDefaultAdmissionRule(v interface{}, d *schema.ResourceData, config *Config) (interface{}, error) { - l := v.([]interface{}) - if len(l) == 0 || l[0] == nil { - return nil, nil - } - raw := l[0] - original := raw.(map[string]interface{}) - transformed := make(map[string]interface{}) - - transformedEvaluationMode, err := expandBinaryAuthorizationPolicyDefaultAdmissionRuleEvaluationMode(original["evaluation_mode"], d, config) - if err != nil { - return nil, err - } else if val := reflect.ValueOf(transformedEvaluationMode); val.IsValid() && !isEmptyValue(val) { - transformed["evaluationMode"] = transformedEvaluationMode - } - - transformedRequireAttestationsBy, err := expandBinaryAuthorizationPolicyDefaultAdmissionRuleRequireAttestationsBy(original["require_attestations_by"], d, config) - if err != nil { - return nil, err - } else if val := reflect.ValueOf(transformedRequireAttestationsBy); val.IsValid() && !isEmptyValue(val) { - transformed["requireAttestationsBy"] = transformedRequireAttestationsBy - } - - transformedEnforcementMode, err := expandBinaryAuthorizationPolicyDefaultAdmissionRuleEnforcementMode(original["enforcement_mode"], d, config) - if err != nil { - return nil, err - } else if val := reflect.ValueOf(transformedEnforcementMode); val.IsValid() && !isEmptyValue(val) { - transformed["enforcementMode"] = transformedEnforcementMode - } - - return transformed, nil -} - -func expandBinaryAuthorizationPolicyDefaultAdmissionRuleEvaluationMode(v interface{}, d *schema.ResourceData, config *Config) (interface{}, error) { - return v, nil -} - -func expandBinaryAuthorizationPolicyDefaultAdmissionRuleRequireAttestationsBy(v interface{}, d *schema.ResourceData, config *Config) (interface{}, error) { - r := regexp.MustCompile("projects/(.+)/attestors/(.+)") - - // It's possible that all entries in the list will specify a project, in - // which case the user wouldn't necessarily have to specify a provider - // project. - var project string - var err error - for _, s := range v.(*schema.Set).List() { - if !r.MatchString(s.(string)) { - project, err = getProject(d, config) - if err != nil { - return []interface{}{}, err - } - break - } - } - - return convertAndMapStringArr(v.(*schema.Set).List(), func(s string) string { - if r.MatchString(s) { - return s - } - - return fmt.Sprintf("projects/%s/attestors/%s", project, s) - }), nil -} - -func expandBinaryAuthorizationPolicyDefaultAdmissionRuleEnforcementMode(v interface{}, d *schema.ResourceData, config *Config) (interface{}, error) { - return v, nil -} diff --git a/google/resource_containeranalysis_note.go b/google/resource_containeranalysis_note.go deleted file mode 100644 index 1ca490d3..00000000 --- a/google/resource_containeranalysis_note.go +++ /dev/null @@ -1,298 +0,0 @@ -// ---------------------------------------------------------------------------- -// -// *** AUTO GENERATED CODE *** AUTO GENERATED CODE *** -// -// ---------------------------------------------------------------------------- -// -// This file is automatically generated by Magic Modules and manual -// changes will be clobbered when the file is regenerated. -// -// Please read more about how to change this file in -// .github/CONTRIBUTING.md. -// -// ---------------------------------------------------------------------------- - -package google - -import ( - "fmt" - "log" - "reflect" - "strings" - - "github.com/hashicorp/terraform/helper/schema" -) - -func resourceContainerAnalysisNote() *schema.Resource { - return &schema.Resource{ - Create: resourceContainerAnalysisNoteCreate, - Read: resourceContainerAnalysisNoteRead, - Update: resourceContainerAnalysisNoteUpdate, - Delete: resourceContainerAnalysisNoteDelete, - - Importer: &schema.ResourceImporter{ - State: resourceContainerAnalysisNoteImport, - }, - DeprecationMessage: `This resource is in beta and will be removed from this provider. -Use the ContainerAnalysisNote resource in the terraform-provider-google-beta provider to continue using it. -See https://terraform.io/docs/providers/google/provider_versions.html for more details on beta resources.`, - - Schema: map[string]*schema.Schema{ - "attestation_authority": { - Type: schema.TypeList, - Required: true, - MaxItems: 1, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ - "hint": { - Type: schema.TypeList, - Required: true, - MaxItems: 1, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ - "human_readable_name": { - Type: schema.TypeString, - Required: true, - }, - }, - }, - }, - }, - }, - }, - "name": { - Type: schema.TypeString, - Required: true, - ForceNew: true, - }, - "project": { - Type: schema.TypeString, - Optional: true, - Computed: true, - ForceNew: true, - }, - }, - } -} - -func resourceContainerAnalysisNoteCreate(d *schema.ResourceData, meta interface{}) error { - config := meta.(*Config) - - obj := make(map[string]interface{}) - nameProp, err := expandContainerAnalysisNoteName(d.Get("name"), d, config) - if err != nil { - return err - } else if v, ok := d.GetOkExists("name"); !isEmptyValue(reflect.ValueOf(nameProp)) && (ok || !reflect.DeepEqual(v, nameProp)) { - obj["name"] = nameProp - } - attestationAuthorityProp, err := expandContainerAnalysisNoteAttestationAuthority(d.Get("attestation_authority"), d, config) - if err != nil { - return err - } else if v, ok := d.GetOkExists("attestation_authority"); !isEmptyValue(reflect.ValueOf(attestationAuthorityProp)) && (ok || !reflect.DeepEqual(v, attestationAuthorityProp)) { - obj["attestationAuthority"] = attestationAuthorityProp - } - - url, err := replaceVars(d, config, "https://containeranalysis.googleapis.com/v1beta1/projects/{{project}}/notes?noteId={{name}}") - if err != nil { - return err - } - - log.Printf("[DEBUG] Creating new Note: %#v", obj) - res, err := sendRequest(config, "POST", url, obj) - if err != nil { - return fmt.Errorf("Error creating Note: %s", err) - } - - // Store the ID now - id, err := replaceVars(d, config, "{{name}}") - if err != nil { - return fmt.Errorf("Error constructing id: %s", err) - } - d.SetId(id) - - log.Printf("[DEBUG] Finished creating Note %q: %#v", d.Id(), res) - - return resourceContainerAnalysisNoteRead(d, meta) -} - -func resourceContainerAnalysisNoteRead(d *schema.ResourceData, meta interface{}) error { - config := meta.(*Config) - - url, err := replaceVars(d, config, "https://containeranalysis.googleapis.com/v1beta1/projects/{{project}}/notes/{{name}}") - if err != nil { - return err - } - - res, err := sendRequest(config, "GET", url, nil) - if err != nil { - return handleNotFoundError(err, d, fmt.Sprintf("ContainerAnalysisNote %q", d.Id())) - } - - if err := d.Set("name", flattenContainerAnalysisNoteName(res["name"])); err != nil { - return fmt.Errorf("Error reading Note: %s", err) - } - if err := d.Set("attestation_authority", flattenContainerAnalysisNoteAttestationAuthority(res["attestationAuthority"])); err != nil { - return fmt.Errorf("Error reading Note: %s", err) - } - project, err := getProject(d, config) - if err != nil { - return err - } - if err := d.Set("project", project); err != nil { - return fmt.Errorf("Error reading Note: %s", err) - } - - return nil -} - -func resourceContainerAnalysisNoteUpdate(d *schema.ResourceData, meta interface{}) error { - config := meta.(*Config) - - obj := make(map[string]interface{}) - nameProp, err := expandContainerAnalysisNoteName(d.Get("name"), d, config) - if err != nil { - return err - } else if v, ok := d.GetOkExists("name"); !isEmptyValue(reflect.ValueOf(v)) && (ok || !reflect.DeepEqual(v, nameProp)) { - obj["name"] = nameProp - } - attestationAuthorityProp, err := expandContainerAnalysisNoteAttestationAuthority(d.Get("attestation_authority"), d, config) - if err != nil { - return err - } else if v, ok := d.GetOkExists("attestation_authority"); !isEmptyValue(reflect.ValueOf(v)) && (ok || !reflect.DeepEqual(v, attestationAuthorityProp)) { - obj["attestationAuthority"] = attestationAuthorityProp - } - - url, err := replaceVars(d, config, "https://containeranalysis.googleapis.com/v1beta1/projects/{{project}}/notes/{{name}}") - if err != nil { - return err - } - - log.Printf("[DEBUG] Updating Note %q: %#v", d.Id(), obj) - updateMask := []string{} - if d.HasChange("attestation_authority.0.hint.0.human_readable_name") { - updateMask = append(updateMask, "attestationAuthority.hint.humanReadableName") - } - // updateMask is a URL parameter but not present in the schema, so replaceVars - // won't set it - url, err = addQueryParams(url, map[string]string{"updateMask": strings.Join(updateMask, ",")}) - if err != nil { - return err - } - _, err = sendRequest(config, "PATCH", url, obj) - - if err != nil { - return fmt.Errorf("Error updating Note %q: %s", d.Id(), err) - } - - return resourceContainerAnalysisNoteRead(d, meta) -} - -func resourceContainerAnalysisNoteDelete(d *schema.ResourceData, meta interface{}) error { - config := meta.(*Config) - - url, err := replaceVars(d, config, "https://containeranalysis.googleapis.com/v1beta1/projects/{{project}}/notes/{{name}}") - if err != nil { - return err - } - - var obj map[string]interface{} - log.Printf("[DEBUG] Deleting Note %q", d.Id()) - res, err := sendRequest(config, "DELETE", url, obj) - if err != nil { - return handleNotFoundError(err, d, "Note") - } - - log.Printf("[DEBUG] Finished deleting Note %q: %#v", d.Id(), res) - return nil -} - -func resourceContainerAnalysisNoteImport(d *schema.ResourceData, meta interface{}) ([]*schema.ResourceData, error) { - config := meta.(*Config) - parseImportId([]string{"projects/(?P[^/]+)/notes/(?P[^/]+)", "(?P[^/]+)/(?P[^/]+)", "(?P[^/]+)"}, d, config) - - // Replace import id for the resource id - id, err := replaceVars(d, config, "{{name}}") - if err != nil { - return nil, fmt.Errorf("Error constructing id: %s", err) - } - d.SetId(id) - - return []*schema.ResourceData{d}, nil -} - -func flattenContainerAnalysisNoteName(v interface{}) interface{} { - if v == nil { - return v - } - return NameFromSelfLinkStateFunc(v) -} - -func flattenContainerAnalysisNoteAttestationAuthority(v interface{}) interface{} { - if v == nil { - return nil - } - original := v.(map[string]interface{}) - transformed := make(map[string]interface{}) - transformed["hint"] = - flattenContainerAnalysisNoteAttestationAuthorityHint(original["hint"]) - return []interface{}{transformed} -} -func flattenContainerAnalysisNoteAttestationAuthorityHint(v interface{}) interface{} { - if v == nil { - return nil - } - original := v.(map[string]interface{}) - transformed := make(map[string]interface{}) - transformed["human_readable_name"] = - flattenContainerAnalysisNoteAttestationAuthorityHintHumanReadableName(original["humanReadableName"]) - return []interface{}{transformed} -} -func flattenContainerAnalysisNoteAttestationAuthorityHintHumanReadableName(v interface{}) interface{} { - return v -} - -func expandContainerAnalysisNoteName(v interface{}, d *schema.ResourceData, config *Config) (interface{}, error) { - return v, nil -} - -func expandContainerAnalysisNoteAttestationAuthority(v interface{}, d *schema.ResourceData, config *Config) (interface{}, error) { - l := v.([]interface{}) - if len(l) == 0 || l[0] == nil { - return nil, nil - } - raw := l[0] - original := raw.(map[string]interface{}) - transformed := make(map[string]interface{}) - - transformedHint, err := expandContainerAnalysisNoteAttestationAuthorityHint(original["hint"], d, config) - if err != nil { - return nil, err - } else if val := reflect.ValueOf(transformedHint); val.IsValid() && !isEmptyValue(val) { - transformed["hint"] = transformedHint - } - - return transformed, nil -} - -func expandContainerAnalysisNoteAttestationAuthorityHint(v interface{}, d *schema.ResourceData, config *Config) (interface{}, error) { - l := v.([]interface{}) - if len(l) == 0 || l[0] == nil { - return nil, nil - } - raw := l[0] - original := raw.(map[string]interface{}) - transformed := make(map[string]interface{}) - - transformedHumanReadableName, err := expandContainerAnalysisNoteAttestationAuthorityHintHumanReadableName(original["human_readable_name"], d, config) - if err != nil { - return nil, err - } else if val := reflect.ValueOf(transformedHumanReadableName); val.IsValid() && !isEmptyValue(val) { - transformed["humanReadableName"] = transformedHumanReadableName - } - - return transformed, nil -} - -func expandContainerAnalysisNoteAttestationAuthorityHintHumanReadableName(v interface{}, d *schema.ResourceData, config *Config) (interface{}, error) { - return v, nil -} diff --git a/google/resource_containeranalysis_note_generated_test.go b/google/resource_containeranalysis_note_generated_test.go deleted file mode 100644 index dc740356..00000000 --- a/google/resource_containeranalysis_note_generated_test.go +++ /dev/null @@ -1,57 +0,0 @@ -// ---------------------------------------------------------------------------- -// -// *** AUTO GENERATED CODE *** AUTO GENERATED CODE *** -// -// ---------------------------------------------------------------------------- -// -// This file is automatically generated by Magic Modules and manual -// changes will be clobbered when the file is regenerated. -// -// Please read more about how to change this file in -// .github/CONTRIBUTING.md. -// -// ---------------------------------------------------------------------------- - -package google - -import ( - "fmt" - "testing" - - "github.com/hashicorp/terraform/helper/acctest" - "github.com/hashicorp/terraform/helper/resource" -) - -func TestAccContainerAnalysisNote_containerAnalysisNoteBasicExample(t *testing.T) { - t.Parallel() - - resource.Test(t, resource.TestCase{ - PreCheck: func() { testAccPreCheck(t) }, - Providers: testAccProviders, - CheckDestroy: testAccCheckContainerAnalysisNoteDestroy, - Steps: []resource.TestStep{ - { - Config: testAccContainerAnalysisNote_containerAnalysisNoteBasicExample(acctest.RandString(10)), - }, - { - ResourceName: "google_container_analysis_note.note", - ImportState: true, - ImportStateVerify: true, - }, - }, - }) -} - -func testAccContainerAnalysisNote_containerAnalysisNoteBasicExample(val string) string { - return fmt.Sprintf(` -resource "google_container_analysis_note" "note" { - name = "test-attestor-note-%s" - attestation_authority { - hint { - human_readable_name = "Attestor Note" - } - } -} -`, val, - ) -} diff --git a/google/resource_filestore_instance.go b/google/resource_filestore_instance.go deleted file mode 100644 index 8ca928a0..00000000 --- a/google/resource_filestore_instance.go +++ /dev/null @@ -1,620 +0,0 @@ -// ---------------------------------------------------------------------------- -// -// *** AUTO GENERATED CODE *** AUTO GENERATED CODE *** -// -// ---------------------------------------------------------------------------- -// -// This file is automatically generated by Magic Modules and manual -// changes will be clobbered when the file is regenerated. -// -// Please read more about how to change this file in -// .github/CONTRIBUTING.md. -// -// ---------------------------------------------------------------------------- - -package google - -import ( - "fmt" - "log" - "reflect" - "strconv" - "strings" - "time" - - "github.com/hashicorp/terraform/helper/schema" - "github.com/hashicorp/terraform/helper/validation" - filestore "google.golang.org/api/file/v1beta1" -) - -func resourceFilestoreInstance() *schema.Resource { - return &schema.Resource{ - Create: resourceFilestoreInstanceCreate, - Read: resourceFilestoreInstanceRead, - Update: resourceFilestoreInstanceUpdate, - Delete: resourceFilestoreInstanceDelete, - - Importer: &schema.ResourceImporter{ - State: resourceFilestoreInstanceImport, - }, - DeprecationMessage: `This resource is in beta and will be removed from this provider. -Use the FilestoreInstance resource in the terraform-provider-google-beta provider to continue using it. -See https://terraform.io/docs/providers/google/provider_versions.html for more details on beta resources.`, - - Timeouts: &schema.ResourceTimeout{ - Create: schema.DefaultTimeout(300 * time.Second), - Update: schema.DefaultTimeout(240 * time.Second), - Delete: schema.DefaultTimeout(240 * time.Second), - }, - - Schema: map[string]*schema.Schema{ - "file_shares": { - Type: schema.TypeList, - Required: true, - MaxItems: 1, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ - "capacity_gb": { - Type: schema.TypeInt, - Required: true, - }, - "name": { - Type: schema.TypeString, - Required: true, - ForceNew: true, - }, - }, - }, - }, - "name": { - Type: schema.TypeString, - Required: true, - }, - "networks": { - Type: schema.TypeList, - Required: true, - ForceNew: true, - MinItems: 1, - Elem: &schema.Resource{ - Schema: map[string]*schema.Schema{ - "modes": { - Type: schema.TypeList, - Required: true, - ForceNew: true, - Elem: &schema.Schema{ - Type: schema.TypeString, - }, - }, - "network": { - Type: schema.TypeString, - Required: true, - ForceNew: true, - }, - "reserved_ip_range": { - Type: schema.TypeString, - Computed: true, - Optional: true, - }, - "ip_addresses": { - Type: schema.TypeList, - Computed: true, - Elem: &schema.Schema{ - Type: schema.TypeString, - }, - }, - }, - }, - }, - "tier": { - Type: schema.TypeString, - Required: true, - ForceNew: true, - ValidateFunc: validation.StringInSlice([]string{"TIER_UNSPECIFIED", "STANDARD", "PREMIUM"}, false), - }, - "zone": { - Type: schema.TypeString, - Required: true, - ForceNew: true, - }, - "description": { - Type: schema.TypeString, - Optional: true, - }, - "labels": { - Type: schema.TypeMap, - Optional: true, - Elem: &schema.Schema{Type: schema.TypeString}, - }, - "create_time": { - Type: schema.TypeString, - Computed: true, - }, - "etag": { - Type: schema.TypeString, - Computed: true, - }, - "project": { - Type: schema.TypeString, - Optional: true, - Computed: true, - ForceNew: true, - }, - }, - } -} - -func resourceFilestoreInstanceCreate(d *schema.ResourceData, meta interface{}) error { - config := meta.(*Config) - - obj := make(map[string]interface{}) - descriptionProp, err := expandFilestoreInstanceDescription(d.Get("description"), d, config) - if err != nil { - return err - } else if v, ok := d.GetOkExists("description"); !isEmptyValue(reflect.ValueOf(descriptionProp)) && (ok || !reflect.DeepEqual(v, descriptionProp)) { - obj["description"] = descriptionProp - } - tierProp, err := expandFilestoreInstanceTier(d.Get("tier"), d, config) - if err != nil { - return err - } else if v, ok := d.GetOkExists("tier"); !isEmptyValue(reflect.ValueOf(tierProp)) && (ok || !reflect.DeepEqual(v, tierProp)) { - obj["tier"] = tierProp - } - labelsProp, err := expandFilestoreInstanceLabels(d.Get("labels"), d, config) - if err != nil { - return err - } else if v, ok := d.GetOkExists("labels"); !isEmptyValue(reflect.ValueOf(labelsProp)) && (ok || !reflect.DeepEqual(v, labelsProp)) { - obj["labels"] = labelsProp - } - fileSharesProp, err := expandFilestoreInstanceFileShares(d.Get("file_shares"), d, config) - if err != nil { - return err - } else if v, ok := d.GetOkExists("file_shares"); !isEmptyValue(reflect.ValueOf(fileSharesProp)) && (ok || !reflect.DeepEqual(v, fileSharesProp)) { - obj["fileShares"] = fileSharesProp - } - networksProp, err := expandFilestoreInstanceNetworks(d.Get("networks"), d, config) - if err != nil { - return err - } else if v, ok := d.GetOkExists("networks"); !isEmptyValue(reflect.ValueOf(networksProp)) && (ok || !reflect.DeepEqual(v, networksProp)) { - obj["networks"] = networksProp - } - - url, err := replaceVars(d, config, "https://file.googleapis.com/v1beta1/projects/{{project}}/locations/{{zone}}/instances?instanceId={{name}}") - if err != nil { - return err - } - - log.Printf("[DEBUG] Creating new Instance: %#v", obj) - res, err := sendRequest(config, "POST", url, obj) - if err != nil { - return fmt.Errorf("Error creating Instance: %s", err) - } - - // Store the ID now - id, err := replaceVars(d, config, "{{project}}/{{zone}}/{{name}}") - if err != nil { - return fmt.Errorf("Error constructing id: %s", err) - } - d.SetId(id) - - project, err := getProject(d, config) - if err != nil { - return err - } - op := &filestore.Operation{} - err = Convert(res, op) - if err != nil { - return err - } - - waitErr := filestoreOperationWaitTime( - config.clientFilestore, op, project, "Creating Instance", - int(d.Timeout(schema.TimeoutCreate).Minutes())) - - if waitErr != nil { - // The resource didn't actually create - d.SetId("") - return fmt.Errorf("Error waiting to create Instance: %s", waitErr) - } - - log.Printf("[DEBUG] Finished creating Instance %q: %#v", d.Id(), res) - - return resourceFilestoreInstanceRead(d, meta) -} - -func resourceFilestoreInstanceRead(d *schema.ResourceData, meta interface{}) error { - config := meta.(*Config) - - url, err := replaceVars(d, config, "https://file.googleapis.com/v1beta1/projects/{{project}}/locations/{{zone}}/instances/{{name}}") - if err != nil { - return err - } - - res, err := sendRequest(config, "GET", url, nil) - if err != nil { - return handleNotFoundError(err, d, fmt.Sprintf("FilestoreInstance %q", d.Id())) - } - - if err := d.Set("name", flattenFilestoreInstanceName(res["name"])); err != nil { - return fmt.Errorf("Error reading Instance: %s", err) - } - if err := d.Set("description", flattenFilestoreInstanceDescription(res["description"])); err != nil { - return fmt.Errorf("Error reading Instance: %s", err) - } - if err := d.Set("create_time", flattenFilestoreInstanceCreateTime(res["createTime"])); err != nil { - return fmt.Errorf("Error reading Instance: %s", err) - } - if err := d.Set("tier", flattenFilestoreInstanceTier(res["tier"])); err != nil { - return fmt.Errorf("Error reading Instance: %s", err) - } - if err := d.Set("labels", flattenFilestoreInstanceLabels(res["labels"])); err != nil { - return fmt.Errorf("Error reading Instance: %s", err) - } - if err := d.Set("file_shares", flattenFilestoreInstanceFileShares(res["fileShares"])); err != nil { - return fmt.Errorf("Error reading Instance: %s", err) - } - if err := d.Set("networks", flattenFilestoreInstanceNetworks(res["networks"])); err != nil { - return fmt.Errorf("Error reading Instance: %s", err) - } - if err := d.Set("etag", flattenFilestoreInstanceEtag(res["etag"])); err != nil { - return fmt.Errorf("Error reading Instance: %s", err) - } - project, err := getProject(d, config) - if err != nil { - return err - } - if err := d.Set("project", project); err != nil { - return fmt.Errorf("Error reading Instance: %s", err) - } - - return nil -} - -func resourceFilestoreInstanceUpdate(d *schema.ResourceData, meta interface{}) error { - config := meta.(*Config) - - obj := make(map[string]interface{}) - descriptionProp, err := expandFilestoreInstanceDescription(d.Get("description"), d, config) - if err != nil { - return err - } else if v, ok := d.GetOkExists("description"); !isEmptyValue(reflect.ValueOf(v)) && (ok || !reflect.DeepEqual(v, descriptionProp)) { - obj["description"] = descriptionProp - } - tierProp, err := expandFilestoreInstanceTier(d.Get("tier"), d, config) - if err != nil { - return err - } else if v, ok := d.GetOkExists("tier"); !isEmptyValue(reflect.ValueOf(v)) && (ok || !reflect.DeepEqual(v, tierProp)) { - obj["tier"] = tierProp - } - labelsProp, err := expandFilestoreInstanceLabels(d.Get("labels"), d, config) - if err != nil { - return err - } else if v, ok := d.GetOkExists("labels"); !isEmptyValue(reflect.ValueOf(v)) && (ok || !reflect.DeepEqual(v, labelsProp)) { - obj["labels"] = labelsProp - } - fileSharesProp, err := expandFilestoreInstanceFileShares(d.Get("file_shares"), d, config) - if err != nil { - return err - } else if v, ok := d.GetOkExists("file_shares"); !isEmptyValue(reflect.ValueOf(v)) && (ok || !reflect.DeepEqual(v, fileSharesProp)) { - obj["fileShares"] = fileSharesProp - } - networksProp, err := expandFilestoreInstanceNetworks(d.Get("networks"), d, config) - if err != nil { - return err - } else if v, ok := d.GetOkExists("networks"); !isEmptyValue(reflect.ValueOf(v)) && (ok || !reflect.DeepEqual(v, networksProp)) { - obj["networks"] = networksProp - } - - url, err := replaceVars(d, config, "https://file.googleapis.com/v1beta1/projects/{{project}}/locations/{{zone}}/instances/{{name}}") - if err != nil { - return err - } - - log.Printf("[DEBUG] Updating Instance %q: %#v", d.Id(), obj) - updateMask := []string{} - - if d.HasChange("description") { - updateMask = append(updateMask, "description") - } - - if d.HasChange("tier") { - updateMask = append(updateMask, "tier") - } - - if d.HasChange("labels") { - updateMask = append(updateMask, "labels") - } - - if d.HasChange("file_shares") { - updateMask = append(updateMask, "fileShares") - } - - if d.HasChange("networks") { - updateMask = append(updateMask, "networks") - } - // updateMask is a URL parameter but not present in the schema, so replaceVars - // won't set it - url, err = addQueryParams(url, map[string]string{"updateMask": strings.Join(updateMask, ",")}) - if err != nil { - return err - } - res, err := sendRequest(config, "PATCH", url, obj) - - if err != nil { - return fmt.Errorf("Error updating Instance %q: %s", d.Id(), err) - } - - project, err := getProject(d, config) - if err != nil { - return err - } - op := &filestore.Operation{} - err = Convert(res, op) - if err != nil { - return err - } - - err = filestoreOperationWaitTime( - config.clientFilestore, op, project, "Updating Instance", - int(d.Timeout(schema.TimeoutUpdate).Minutes())) - - if err != nil { - return err - } - - return resourceFilestoreInstanceRead(d, meta) -} - -func resourceFilestoreInstanceDelete(d *schema.ResourceData, meta interface{}) error { - config := meta.(*Config) - - url, err := replaceVars(d, config, "https://file.googleapis.com/v1beta1/projects/{{project}}/locations/{{zone}}/instances/{{name}}") - if err != nil { - return err - } - - var obj map[string]interface{} - log.Printf("[DEBUG] Deleting Instance %q", d.Id()) - res, err := sendRequest(config, "DELETE", url, obj) - if err != nil { - return handleNotFoundError(err, d, "Instance") - } - - project, err := getProject(d, config) - if err != nil { - return err - } - op := &filestore.Operation{} - err = Convert(res, op) - if err != nil { - return err - } - - err = filestoreOperationWaitTime( - config.clientFilestore, op, project, "Deleting Instance", - int(d.Timeout(schema.TimeoutDelete).Minutes())) - - if err != nil { - return err - } - - log.Printf("[DEBUG] Finished deleting Instance %q: %#v", d.Id(), res) - return nil -} - -func resourceFilestoreInstanceImport(d *schema.ResourceData, meta interface{}) ([]*schema.ResourceData, error) { - config := meta.(*Config) - parseImportId([]string{"projects/(?P[^/]+)/locations/(?P[^/]+)/instances/(?P[^/]+)", "(?P[^/]+)/(?P[^/]+)/(?P[^/]+)", "(?P[^/]+)"}, d, config) - - // Replace import id for the resource id - id, err := replaceVars(d, config, "{{project}}/{{zone}}/{{name}}") - if err != nil { - return nil, fmt.Errorf("Error constructing id: %s", err) - } - d.SetId(id) - - return []*schema.ResourceData{d}, nil -} - -func flattenFilestoreInstanceName(v interface{}) interface{} { - if v == nil { - return v - } - return NameFromSelfLinkStateFunc(v) -} - -func flattenFilestoreInstanceDescription(v interface{}) interface{} { - return v -} - -func flattenFilestoreInstanceCreateTime(v interface{}) interface{} { - return v -} - -func flattenFilestoreInstanceTier(v interface{}) interface{} { - return v -} - -func flattenFilestoreInstanceLabels(v interface{}) interface{} { - return v -} - -func flattenFilestoreInstanceFileShares(v interface{}) interface{} { - if v == nil { - return v - } - l := v.([]interface{}) - transformed := make([]interface{}, 0, len(l)) - for _, raw := range l { - original := raw.(map[string]interface{}) - transformed = append(transformed, map[string]interface{}{ - "name": flattenFilestoreInstanceFileSharesName(original["name"]), - "capacity_gb": flattenFilestoreInstanceFileSharesCapacityGb(original["capacityGb"]), - }) - } - return transformed -} -func flattenFilestoreInstanceFileSharesName(v interface{}) interface{} { - return v -} - -func flattenFilestoreInstanceFileSharesCapacityGb(v interface{}) interface{} { - // Handles the string fixed64 format - if strVal, ok := v.(string); ok { - if intVal, err := strconv.ParseInt(strVal, 10, 64); err == nil { - return intVal - } // let terraform core handle it if we can't convert the string to an int. - } - return v -} - -func flattenFilestoreInstanceNetworks(v interface{}) interface{} { - if v == nil { - return v - } - l := v.([]interface{}) - transformed := make([]interface{}, 0, len(l)) - for _, raw := range l { - original := raw.(map[string]interface{}) - transformed = append(transformed, map[string]interface{}{ - "network": flattenFilestoreInstanceNetworksNetwork(original["network"]), - "modes": flattenFilestoreInstanceNetworksModes(original["modes"]), - "reserved_ip_range": flattenFilestoreInstanceNetworksReservedIpRange(original["reservedIpRange"]), - "ip_addresses": flattenFilestoreInstanceNetworksIpAddresses(original["ipAddresses"]), - }) - } - return transformed -} -func flattenFilestoreInstanceNetworksNetwork(v interface{}) interface{} { - return v -} - -func flattenFilestoreInstanceNetworksModes(v interface{}) interface{} { - return v -} - -func flattenFilestoreInstanceNetworksReservedIpRange(v interface{}) interface{} { - return v -} - -func flattenFilestoreInstanceNetworksIpAddresses(v interface{}) interface{} { - return v -} - -func flattenFilestoreInstanceEtag(v interface{}) interface{} { - return v -} - -func expandFilestoreInstanceDescription(v interface{}, d *schema.ResourceData, config *Config) (interface{}, error) { - return v, nil -} - -func expandFilestoreInstanceTier(v interface{}, d *schema.ResourceData, config *Config) (interface{}, error) { - return v, nil -} - -func expandFilestoreInstanceLabels(v interface{}, d *schema.ResourceData, config *Config) (map[string]string, error) { - if v == nil { - return map[string]string{}, nil - } - m := make(map[string]string) - for k, val := range v.(map[string]interface{}) { - m[k] = val.(string) - } - return m, nil -} - -func expandFilestoreInstanceFileShares(v interface{}, d *schema.ResourceData, config *Config) (interface{}, error) { - l := v.([]interface{}) - req := make([]interface{}, 0, len(l)) - for _, raw := range l { - if raw == nil { - continue - } - original := raw.(map[string]interface{}) - transformed := make(map[string]interface{}) - - transformedName, err := expandFilestoreInstanceFileSharesName(original["name"], d, config) - if err != nil { - return nil, err - } else if val := reflect.ValueOf(transformedName); val.IsValid() && !isEmptyValue(val) { - transformed["name"] = transformedName - } - - transformedCapacityGb, err := expandFilestoreInstanceFileSharesCapacityGb(original["capacity_gb"], d, config) - if err != nil { - return nil, err - } else if val := reflect.ValueOf(transformedCapacityGb); val.IsValid() && !isEmptyValue(val) { - transformed["capacityGb"] = transformedCapacityGb - } - - req = append(req, transformed) - } - return req, nil -} - -func expandFilestoreInstanceFileSharesName(v interface{}, d *schema.ResourceData, config *Config) (interface{}, error) { - return v, nil -} - -func expandFilestoreInstanceFileSharesCapacityGb(v interface{}, d *schema.ResourceData, config *Config) (interface{}, error) { - return v, nil -} - -func expandFilestoreInstanceNetworks(v interface{}, d *schema.ResourceData, config *Config) (interface{}, error) { - l := v.([]interface{}) - req := make([]interface{}, 0, len(l)) - for _, raw := range l { - if raw == nil { - continue - } - original := raw.(map[string]interface{}) - transformed := make(map[string]interface{}) - - transformedNetwork, err := expandFilestoreInstanceNetworksNetwork(original["network"], d, config) - if err != nil { - return nil, err - } else if val := reflect.ValueOf(transformedNetwork); val.IsValid() && !isEmptyValue(val) { - transformed["network"] = transformedNetwork - } - - transformedModes, err := expandFilestoreInstanceNetworksModes(original["modes"], d, config) - if err != nil { - return nil, err - } else if val := reflect.ValueOf(transformedModes); val.IsValid() && !isEmptyValue(val) { - transformed["modes"] = transformedModes - } - - transformedReservedIpRange, err := expandFilestoreInstanceNetworksReservedIpRange(original["reserved_ip_range"], d, config) - if err != nil { - return nil, err - } else if val := reflect.ValueOf(transformedReservedIpRange); val.IsValid() && !isEmptyValue(val) { - transformed["reservedIpRange"] = transformedReservedIpRange - } - - transformedIpAddresses, err := expandFilestoreInstanceNetworksIpAddresses(original["ip_addresses"], d, config) - if err != nil { - return nil, err - } else if val := reflect.ValueOf(transformedIpAddresses); val.IsValid() && !isEmptyValue(val) { - transformed["ipAddresses"] = transformedIpAddresses - } - - req = append(req, transformed) - } - return req, nil -} - -func expandFilestoreInstanceNetworksNetwork(v interface{}, d *schema.ResourceData, config *Config) (interface{}, error) { - return v, nil -} - -func expandFilestoreInstanceNetworksModes(v interface{}, d *schema.ResourceData, config *Config) (interface{}, error) { - return v, nil -} - -func expandFilestoreInstanceNetworksReservedIpRange(v interface{}, d *schema.ResourceData, config *Config) (interface{}, error) { - return v, nil -} - -func expandFilestoreInstanceNetworksIpAddresses(v interface{}, d *schema.ResourceData, config *Config) (interface{}, error) { - return v, nil -} diff --git a/google/resource_filestore_instance_generated_test.go b/google/resource_filestore_instance_generated_test.go deleted file mode 100644 index 517d9fd4..00000000 --- a/google/resource_filestore_instance_generated_test.go +++ /dev/null @@ -1,65 +0,0 @@ -// ---------------------------------------------------------------------------- -// -// *** AUTO GENERATED CODE *** AUTO GENERATED CODE *** -// -// ---------------------------------------------------------------------------- -// -// This file is automatically generated by Magic Modules and manual -// changes will be clobbered when the file is regenerated. -// -// Please read more about how to change this file in -// .github/CONTRIBUTING.md. -// -// ---------------------------------------------------------------------------- - -package google - -import ( - "fmt" - "testing" - - "github.com/hashicorp/terraform/helper/acctest" - "github.com/hashicorp/terraform/helper/resource" -) - -func TestAccFilestoreInstance_filestoreInstanceBasicExample(t *testing.T) { - t.Parallel() - - resource.Test(t, resource.TestCase{ - PreCheck: func() { testAccPreCheck(t) }, - Providers: testAccProviders, - CheckDestroy: testAccCheckFilestoreInstanceDestroy, - Steps: []resource.TestStep{ - { - Config: testAccFilestoreInstance_filestoreInstanceBasicExample(acctest.RandString(10)), - }, - { - ResourceName: "google_filestore_instance.instance", - ImportState: true, - ImportStateVerify: true, - ImportStateVerifyIgnore: []string{"zone"}, - }, - }, - }) -} - -func testAccFilestoreInstance_filestoreInstanceBasicExample(val string) string { - return fmt.Sprintf(` -resource "google_filestore_instance" "instance" { - name = "test-instance-%s" - zone = "us-central1-b" - tier = "PREMIUM" - - file_shares { - capacity_gb = 2660 - name = "share1" - } - - networks { - network = "default" - modes = ["MODE_IPV4"] - } -} -`, val, - ) -}