Skip to content

Commit

Permalink
Stop editing the global config object with new useragent entries (#4123)
Browse files Browse the repository at this point in the history
  • Loading branch information
rileykarson authored Oct 19, 2020
1 parent 9ddd43c commit c531e1e
Show file tree
Hide file tree
Showing 14 changed files with 14 additions and 86 deletions.
2 changes: 1 addition & 1 deletion products/appengine/terraform.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -195,8 +195,8 @@ overrides: !ruby/object:Overrides::ResourceOverrides
id_format: "apps/{{project}}/services/{{service}}"
import_format: ["apps/{{project}}/services/{{service}}"]
mutex: "apps/{{project}}"
skip_delete: true
custom_code: !ruby/object:Provider::Terraform::CustomCode
custom_delete: templates/terraform/custom_delete/skip_delete.go.erb
test_check_destroy: templates/terraform/custom_check_destroy/skip_delete_during_test.go.erb
properties:
split: !ruby/object:Overrides::Terraform::PropertyOverride
Expand Down
2 changes: 1 addition & 1 deletion products/compute/terraform.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -1249,6 +1249,7 @@ overrides: !ruby/object:Overrides::ResourceOverrides
import_format: ["projects/{{project}}/global/networks/{{network}}/networkPeerings/{{peering}}"]
# format from google_compute_network_peering
mutex: 'projects/{{project}}/global/networks/{{network}}/peerings'
skip_delete: true
examples:
- !ruby/object:Provider::Terraform::Examples
name: "network_peering_routes_config_basic"
Expand All @@ -1273,7 +1274,6 @@ overrides: !ruby/object:Overrides::ResourceOverrides
exportCustomRoutes: !ruby/object:Overrides::Terraform::PropertyOverride
send_empty_value: true
custom_code: !ruby/object:Provider::Terraform::CustomCode
custom_delete: 'templates/terraform/custom_delete/skip_delete.go.erb'
encoder: 'templates/terraform/encoders/network_peering_routes_config.go.erb'
NodeGroup: !ruby/object:Overrides::Terraform::ResourceOverride
docs: !ruby/object:Provider::Terraform::Docs
Expand Down
2 changes: 1 addition & 1 deletion products/iap/terraform.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -168,6 +168,7 @@ overrides: !ruby/object:Overrides::ResourceOverrides
but *will not delete it from Google Cloud.*
id_format: '{{name}}'
import_format: ['{{name}}']
skip_delete: true
examples:
- !ruby/object:Provider::Terraform::Examples
name: "iap_brand"
Expand All @@ -179,7 +180,6 @@ overrides: !ruby/object:Overrides::ResourceOverrides
org_domain: :ORG_DOMAIN
skip_test: true
custom_code: !ruby/object:Provider::Terraform::CustomCode
custom_delete: templates/terraform/custom_delete/skip_delete.go.erb
custom_import: templates/terraform/custom_import/iap_brand.go.erb
post_create: templates/terraform/post_create/set_computed_name.erb
Client: !ruby/object:Overrides::Terraform::ResourceOverride
Expand Down
4 changes: 2 additions & 2 deletions products/kms/terraform.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ overrides: !ruby/object:Overrides::ResourceOverrides
*will not delete the resource on the server.*
id_format: "projects/{{project}}/locations/{{location}}/keyRings/{{name}}"
import_format: ["projects/{{project}}/locations/{{location}}/keyRings/{{name}}"]
skip_delete: true
examples:
- !ruby/object:Provider::Terraform::Examples
name: "kms_key_ring_basic"
Expand All @@ -42,7 +43,6 @@ overrides: !ruby/object:Overrides::ResourceOverrides
location: !ruby/object:Overrides::Terraform::PropertyOverride
ignore_read: true
custom_code: !ruby/object:Provider::Terraform::CustomCode
custom_delete: templates/terraform/custom_delete/skip_delete.go.erb
decoder: templates/terraform/decoders/long_name_to_self_link.go.erb
encoder: templates/terraform/encoders/send_nil_body.go.erb
extra_schema_entry: templates/terraform/extra_schema_entry/kms_self_link.erb
Expand Down Expand Up @@ -144,6 +144,7 @@ overrides: !ruby/object:Overrides::ResourceOverrides
supports_indirect_user_project_override: true
exclude_import: true
exclude_validator: true
skip_delete: true
examples:
- !ruby/object:Provider::Terraform::Examples
name: "kms_secret_ciphertext_basic"
Expand All @@ -167,7 +168,6 @@ overrides: !ruby/object:Overrides::ResourceOverrides
ciphertext: !ruby/object:Overrides::Terraform::PropertyOverride
ignore_read: true
custom_code: !ruby/object:Provider::Terraform::CustomCode
custom_delete: templates/terraform/custom_delete/skip_delete.go.erb
post_create: templates/terraform/post_create/kms_secret_ciphertext.go.erb
decoder: templates/terraform/decoders/noop.go.erb
# This is for copying files over
Expand Down
2 changes: 1 addition & 1 deletion products/securitycenter/terraform.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
legacy_name: scc
overrides: !ruby/object:Overrides::ResourceOverrides
Source: !ruby/object:Overrides::Terraform::ResourceOverride
skip_delete: true
examples:
- !ruby/object:Provider::Terraform::Examples
name: "scc_source_basic"
Expand All @@ -33,7 +34,6 @@ overrides: !ruby/object:Overrides::ResourceOverrides
validation: !ruby/object:Provider::Terraform::Validation
regex: '[\p{L}\p{N}]({\p{L}\p{N}_- ]{0,30}[\p{L}\p{N}])?'
custom_code: !ruby/object:Provider::Terraform::CustomCode
custom_delete: templates/terraform/custom_delete/skip_delete.go.erb
custom_import: templates/terraform/custom_import/scc_source_self_link_as_name_set_organization.go.erb
post_create: templates/terraform/post_create/set_computed_name.erb
# This is for copying files over
Expand Down
6 changes: 0 additions & 6 deletions templates/terraform/custom_delete/skip_delete.go.erb

This file was deleted.

2 changes: 0 additions & 2 deletions templates/terraform/resource.erb
Original file line number Diff line number Diff line change
Expand Up @@ -562,7 +562,6 @@ func resource<%= resource_name -%>Update(d *schema.ResourceData, meta interface{
if err != nil {
return err
}
config.userAgent = userAgent

billingProject := ""

Expand Down Expand Up @@ -821,7 +820,6 @@ func resource<%= resource_name -%>Delete(d *schema.ResourceData, meta interface{
if err != nil {
return err
}
config.userAgent = userAgent

<% if object.custom_code.custom_delete -%>
<%= lines(compile(pwd + '/' + object.custom_code.custom_delete)) -%>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -119,11 +119,6 @@ func resourceGoogleProjectServiceImport(d *schema.ResourceData, m interface{}) (

func resourceGoogleProjectServiceCreate(d *schema.ResourceData, meta interface{}) error {
config := meta.(*Config)
userAgent, err := generateUserAgentString(d, config.userAgent)
if err != nil {
return err
}
config.userAgent = userAgent

project, err := getProject(d, config)
if err != nil {
Expand Down
11 changes: 1 addition & 10 deletions third_party/terraform/resources/resource_iam_audit_config.go
Original file line number Diff line number Diff line change
Expand Up @@ -136,11 +136,6 @@ func iamAuditConfigImport(resourceIdParser resourceIdParserFunc) schema.StateFun
func resourceIamAuditConfigCreateUpdate(newUpdaterFunc newResourceIamUpdaterFunc, enableBatching bool) func(*schema.ResourceData, interface{}) error {
return func(d *schema.ResourceData, meta interface{}) error {
config := meta.(*Config)
userAgent, err := generateUserAgentString(d, config.userAgent)
if err != nil {
return err
}
config.userAgent = userAgent

updater, err := newUpdaterFunc(d, config)
if err != nil {
Expand Down Expand Up @@ -170,11 +165,7 @@ func resourceIamAuditConfigCreateUpdate(newUpdaterFunc newResourceIamUpdaterFunc
func resourceIamAuditConfigDelete(newUpdaterFunc newResourceIamUpdaterFunc, enableBatching bool) schema.DeleteFunc {
return func(d *schema.ResourceData, meta interface{}) error {
config := meta.(*Config)
userAgent, err := generateUserAgentString(d, config.userAgent)
if err != nil {
return err
}
config.userAgent = userAgent

updater, err := newUpdaterFunc(d, config)
if err != nil {
return err
Expand Down
12 changes: 2 additions & 10 deletions third_party/terraform/resources/resource_iam_binding.go.erb
Original file line number Diff line number Diff line change
Expand Up @@ -117,11 +117,7 @@ func resourceIamBindingCreateUpdate(newUpdaterFunc newResourceIamUpdaterFunc, en
func resourceIamBindingRead(newUpdaterFunc newResourceIamUpdaterFunc) schema.ReadFunc {
return func(d *schema.ResourceData, meta interface{}) error {
config := meta.(*Config)
userAgent, err := generateUserAgentString(d, config.userAgent)
if err != nil {
return err
}
config.userAgent = userAgent

updater, err := newUpdaterFunc(d, config)
if err != nil {
return err
Expand Down Expand Up @@ -255,11 +251,7 @@ func iamBindingImport(newUpdaterFunc newResourceIamUpdaterFunc, resourceIdParser
func resourceIamBindingDelete(newUpdaterFunc newResourceIamUpdaterFunc, enableBatching bool) schema.DeleteFunc {
return func(d *schema.ResourceData, meta interface{}) error {
config := meta.(*Config)
userAgent, err := generateUserAgentString(d, config.userAgent)
if err != nil {
return err
}
config.userAgent = userAgent

updater, err := newUpdaterFunc(d, config)
if err != nil {
return err
Expand Down
15 changes: 0 additions & 15 deletions third_party/terraform/resources/resource_iam_member.go.erb
Original file line number Diff line number Diff line change
Expand Up @@ -168,11 +168,6 @@ func getResourceIamMember(d *schema.ResourceData) *cloudresourcemanager.Binding
func resourceIamMemberCreate(newUpdaterFunc newResourceIamUpdaterFunc, enableBatching bool) schema.CreateFunc {
return func(d *schema.ResourceData, meta interface{}) error {
config := meta.(*Config)
userAgent, err := generateUserAgentString(d, config.userAgent)
if err != nil {
return err
}
config.userAgent = userAgent

updater, err := newUpdaterFunc(d, config)
if err != nil {
Expand Down Expand Up @@ -206,11 +201,6 @@ func resourceIamMemberCreate(newUpdaterFunc newResourceIamUpdaterFunc, enableBat
func resourceIamMemberRead(newUpdaterFunc newResourceIamUpdaterFunc) schema.ReadFunc {
return func(d *schema.ResourceData, meta interface{}) error {
config := meta.(*Config)
userAgent, err := generateUserAgentString(d, config.userAgent)
if err != nil {
return err
}
config.userAgent = userAgent

updater, err := newUpdaterFunc(d, config)
if err != nil {
Expand Down Expand Up @@ -273,11 +263,6 @@ func resourceIamMemberRead(newUpdaterFunc newResourceIamUpdaterFunc) schema.Read
func resourceIamMemberDelete(newUpdaterFunc newResourceIamUpdaterFunc, enableBatching bool) schema.DeleteFunc {
return func(d *schema.ResourceData, meta interface{}) error {
config := meta.(*Config)
userAgent, err := generateUserAgentString(d, config.userAgent)
if err != nil {
return err
}
config.userAgent = userAgent

updater, err := newUpdaterFunc(d, config)
if err != nil {
Expand Down
20 changes: 0 additions & 20 deletions third_party/terraform/resources/resource_iam_policy.go.erb
Original file line number Diff line number Diff line change
Expand Up @@ -55,11 +55,6 @@ func ResourceIamPolicy(parentSpecificSchema map[string]*schema.Schema, newUpdate
func ResourceIamPolicyCreate(newUpdaterFunc newResourceIamUpdaterFunc) schema.CreateFunc {
return func(d *schema.ResourceData, meta interface{}) error {
config := meta.(*Config)
userAgent, err := generateUserAgentString(d, config.userAgent)
if err != nil {
return err
}
config.userAgent = userAgent

updater, err := newUpdaterFunc(d, config)
if err != nil {
Expand All @@ -78,11 +73,6 @@ func ResourceIamPolicyCreate(newUpdaterFunc newResourceIamUpdaterFunc) schema.Cr
func ResourceIamPolicyRead(newUpdaterFunc newResourceIamUpdaterFunc) schema.ReadFunc {
return func(d *schema.ResourceData, meta interface{}) error {
config := meta.(*Config)
userAgent, err := generateUserAgentString(d, config.userAgent)
if err != nil {
return err
}
config.userAgent = userAgent

updater, err := newUpdaterFunc(d, config)
if err != nil {
Expand All @@ -108,11 +98,6 @@ func ResourceIamPolicyRead(newUpdaterFunc newResourceIamUpdaterFunc) schema.Read
func ResourceIamPolicyUpdate(newUpdaterFunc newResourceIamUpdaterFunc) schema.UpdateFunc {
return func(d *schema.ResourceData, meta interface{}) error {
config := meta.(*Config)
userAgent, err := generateUserAgentString(d, config.userAgent)
if err != nil {
return err
}
config.userAgent = userAgent

updater, err := newUpdaterFunc(d, config)
if err != nil {
Expand All @@ -132,11 +117,6 @@ func ResourceIamPolicyUpdate(newUpdaterFunc newResourceIamUpdaterFunc) schema.Up
func ResourceIamPolicyDelete(newUpdaterFunc newResourceIamUpdaterFunc) schema.DeleteFunc {
return func(d *schema.ResourceData, meta interface{}) error {
config := meta.(*Config)
userAgent, err := generateUserAgentString(d, config.userAgent)
if err != nil {
return err
}
config.userAgent = userAgent

updater, err := newUpdaterFunc(d, config)
if err != nil {
Expand Down
11 changes: 0 additions & 11 deletions third_party/terraform/utils/provider_test.go.erb
Original file line number Diff line number Diff line change
Expand Up @@ -507,7 +507,6 @@ func TestAccProviderMeta_setModuleName(t *testing.T) {
Steps: []resource.TestStep{
{
Config: testAccProviderMeta_setModuleName(moduleName, randString(t, 10)),
Check: testAccCheckConfigAgentModified(t, moduleName),
},
{
ResourceName: "google_compute_address.default",
Expand All @@ -518,16 +517,6 @@ func TestAccProviderMeta_setModuleName(t *testing.T) {
})
}

func testAccCheckConfigAgentModified(t *testing.T, moduleName string) func(s *terraform.State) error {
return func(s *terraform.State) error {
config := googleProviderConfig(t)
if !strings.Contains(config.userAgent, moduleName) {
return fmt.Errorf("expected userAgent to contain provider_meta set module_name")
}
return nil
}
}

func TestAccProviderUserProjectOverride(t *testing.T) {
// Parallel fine-grained resource creation
skipIfVcr(t)
Expand Down
6 changes: 5 additions & 1 deletion third_party/terraform/utils/utils.go.erb
Original file line number Diff line number Diff line change
Expand Up @@ -462,5 +462,9 @@ func generateUserAgentString(d *schema.ResourceData, currentUserAgent string) (s
return currentUserAgent, err
}

return strings.Join([]string{currentUserAgent, m.ModuleName}, " "), nil
if m.ModuleName != "" {
return strings.Join([]string{currentUserAgent, m.ModuleName}, " "), nil
}

return currentUserAgent, nil
}

0 comments on commit c531e1e

Please sign in to comment.