diff --git a/go.mod b/go.mod index b6a8839c1..032dc2511 100644 --- a/go.mod +++ b/go.mod @@ -11,7 +11,7 @@ require ( github.com/hashicorp/hcl/v2 v2.19.1 github.com/hashicorp/terraform-json v0.21.0 github.com/hashicorp/terraform-plugin-sdk/v2 v2.33.0 - github.com/hashicorp/terraform-provider-google-beta v1.20.1-0.20240614114530-27118ec9ebe0 + github.com/hashicorp/terraform-provider-google-beta v1.20.1-0.20240614145752-c9e7877bee60 github.com/mitchellh/go-homedir v1.1.0 // indirect github.com/pkg/errors v0.9.1 github.com/stretchr/testify v1.9.0 diff --git a/go.sum b/go.sum index 0b6361f53..7a8850ac0 100644 --- a/go.sum +++ b/go.sum @@ -184,8 +184,8 @@ github.com/hashicorp/terraform-plugin-mux v0.15.0 h1:+/+lDx0WUsIOpkAmdwBIoFU8UP9 github.com/hashicorp/terraform-plugin-mux v0.15.0/go.mod h1:9ezplb1Dyq394zQ+ldB0nvy/qbNAz3mMoHHseMTMaKo= github.com/hashicorp/terraform-plugin-sdk/v2 v2.33.0 h1:qHprzXy/As0rxedphECBEQAh3R4yp6pKksKHcqZx5G8= github.com/hashicorp/terraform-plugin-sdk/v2 v2.33.0/go.mod h1:H+8tjs9TjV2w57QFVSMBQacf8k/E1XwLXGCARgViC6A= -github.com/hashicorp/terraform-provider-google-beta v1.20.1-0.20240614114530-27118ec9ebe0 h1:d5RJXpH5MAgfOC2vq4GfEZn6nHW2i9fzVmjyiOjnB1g= -github.com/hashicorp/terraform-provider-google-beta v1.20.1-0.20240614114530-27118ec9ebe0/go.mod h1:qGTuIbb/eUvNzz6mdjRCOMedFoejBXIavNnhS3TAMbU= +github.com/hashicorp/terraform-provider-google-beta v1.20.1-0.20240614145752-c9e7877bee60 h1:/BXebAwdH+pUJZZvzRl7gAwhXx3KhQnC6Y0aecxXrys= +github.com/hashicorp/terraform-provider-google-beta v1.20.1-0.20240614145752-c9e7877bee60/go.mod h1:qGTuIbb/eUvNzz6mdjRCOMedFoejBXIavNnhS3TAMbU= github.com/hashicorp/terraform-registry-address v0.2.3 h1:2TAiKJ1A3MAkZlH1YI/aTVcLZRu7JseiXNRHbOAyoTI= github.com/hashicorp/terraform-registry-address v0.2.3/go.mod h1:lFHA76T8jfQteVfT7caREqguFrW3c4MFSPhZB7HHgUM= github.com/hashicorp/terraform-svchost v0.1.1 h1:EZZimZ1GxdqFRinZ1tpJwVxxt49xc/S52uzrw4x0jKQ= diff --git a/tfplan2cai/converters/google/resources/services/pubsub/pubsub_subscription.go b/tfplan2cai/converters/google/resources/services/pubsub/pubsub_subscription.go index a60d99672..407038c2d 100644 --- a/tfplan2cai/converters/google/resources/services/pubsub/pubsub_subscription.go +++ b/tfplan2cai/converters/google/resources/services/pubsub/pubsub_subscription.go @@ -240,6 +240,13 @@ func expandPubsubSubscriptionBigqueryConfig(v interface{}, d tpgresource.Terrafo transformed["dropUnknownFields"] = transformedDropUnknownFields } + transformedServiceAccountEmail, err := expandPubsubSubscriptionBigqueryConfigServiceAccountEmail(original["service_account_email"], d, config) + if err != nil { + return nil, err + } else if val := reflect.ValueOf(transformedServiceAccountEmail); val.IsValid() && !tpgresource.IsEmptyValue(val) { + transformed["serviceAccountEmail"] = transformedServiceAccountEmail + } + return transformed, nil } @@ -263,6 +270,10 @@ func expandPubsubSubscriptionBigqueryConfigDropUnknownFields(v interface{}, d tp return v, nil } +func expandPubsubSubscriptionBigqueryConfigServiceAccountEmail(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { + return v, nil +} + func expandPubsubSubscriptionCloudStorageConfig(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { l := v.([]interface{}) if len(l) == 0 || l[0] == nil { @@ -328,6 +339,13 @@ func expandPubsubSubscriptionCloudStorageConfig(v interface{}, d tpgresource.Ter transformed["avroConfig"] = transformedAvroConfig } + transformedServiceAccountEmail, err := expandPubsubSubscriptionCloudStorageConfigServiceAccountEmail(original["service_account_email"], d, config) + if err != nil { + return nil, err + } else if val := reflect.ValueOf(transformedServiceAccountEmail); val.IsValid() && !tpgresource.IsEmptyValue(val) { + transformed["serviceAccountEmail"] = transformedServiceAccountEmail + } + return transformed, nil } @@ -382,6 +400,10 @@ func expandPubsubSubscriptionCloudStorageConfigAvroConfigWriteMetadata(v interfa return v, nil } +func expandPubsubSubscriptionCloudStorageConfigServiceAccountEmail(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { + return v, nil +} + func expandPubsubSubscriptionPushConfig(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { l := v.([]interface{}) if len(l) == 0 || l[0] == nil {