From 4311808a31bded0e5d740543173ddca50d7eb12b Mon Sep 17 00:00:00 2001 From: Zhenhua Li Date: Mon, 16 Sep 2024 14:22:54 -0700 Subject: [PATCH] Copy the comments to Go yaml files --- .../go_GcpUserAccessBinding.yaml | 1 + mmv1/products/activedirectory/go_Domain.yaml | 1 + .../activedirectory/go_DomainTrust.yaml | 3 +++ mmv1/products/activedirectory/go_Peering.yaml | 1 + mmv1/products/alloydb/go_Backup.yaml | 1 + .../products/apigee/go_EndpointAttachment.yaml | 3 +++ mmv1/products/apigee/go_Envgroup.yaml | 3 +++ .../products/apigee/go_EnvgroupAttachment.yaml | 1 + mmv1/products/apigee/go_Environment.yaml | 5 +++++ mmv1/products/apigee/go_Instance.yaml | 13 +++++++++++++ .../products/apigee/go_InstanceAttachment.yaml | 3 +++ mmv1/products/apigee/go_NatAddress.yaml | 3 +++ mmv1/products/apigee/go_Organization.yaml | 18 ++++++++++++++++++ .../appengine/go_FlexibleAppVersion.yaml | 1 + .../artifactregistry/go_VPCSCConfig.yaml | 1 + mmv1/products/bigquery/go_DatasetAccess.yaml | 4 ++++ mmv1/products/bigquery/go_Job.yaml | 3 +++ .../products/clouddomains/go_Registration.yaml | 11 +++++++++++ mmv1/products/cloudfunctions2/go_Function.yaml | 2 ++ mmv1/products/cloudidentity/go_Group.yaml | 1 + .../cloudidentity/go_GroupMembership.yaml | 2 ++ mmv1/products/cloudids/go_Endpoint.yaml | 1 + mmv1/products/compute/go_Address.yaml | 2 ++ mmv1/products/compute/go_ForwardingRule.yaml | 1 + .../compute/go_GlobalForwardingRule.yaml | 1 + .../compute/go_GlobalNetworkEndpoint.yaml | 4 ++++ mmv1/products/compute/go_HaVpnGateway.yaml | 2 ++ mmv1/products/compute/go_NetworkEndpoint.yaml | 4 ++++ mmv1/products/compute/go_NetworkEndpoints.yaml | 4 ++++ .../products/compute/go_PerInstanceConfig.yaml | 4 ++++ .../compute/go_PublicAdvertisedPrefix.yaml | 2 ++ .../compute/go_PublicDelegatedPrefix.yaml | 2 ++ mmv1/products/compute/go_RegionCommitment.yaml | 4 ++++ .../compute/go_RegionNetworkEndpoint.yaml | 4 ++++ .../compute/go_RegionPerInstanceConfig.yaml | 4 ++++ .../compute/go_RegionSecurityPolicyRule.yaml | 2 ++ mmv1/products/compute/go_RegionUrlMap.yaml | 1 + mmv1/products/compute/go_Reservation.yaml | 1 + mmv1/products/compute/go_UrlMap.yaml | 1 + .../containeranalysis/go_Occurrence.yaml | 1 + mmv1/products/datacatalog/go_Tag.yaml | 1 + mmv1/products/dataform/go_Repository.yaml | 8 ++++++++ mmv1/products/dataplex/go_Datascan.yaml | 1 + mmv1/products/dataplex/go_Task.yaml | 1 + mmv1/products/datastream/go_Stream.yaml | 2 ++ .../developerconnect/go_Connection.yaml | 12 ------------ .../documentaiwarehouse/go_DocumentSchema.yaml | 1 + .../documentaiwarehouse/go_Location.yaml | 1 + mmv1/products/edgecontainer/go_NodePool.yaml | 5 +++++ mmv1/products/filestore/go_Instance.yaml | 1 + mmv1/products/iap/go_AppEngineService.yaml | 1 + .../go_DefaultSupportedIdpConfig.yaml | 2 ++ mmv1/products/integrations/go_AuthConfig.yaml | 1 + mmv1/products/kms/go_KeyRing.yaml | 6 ++++++ .../logging/go_OrganizationSettings.yaml | 1 + mmv1/products/monitoring/go_AlertPolicy.yaml | 3 +++ .../monitoring/go_NotificationChannel.yaml | 1 + .../networksecurity/go_FirewallEndpoint.yaml | 1 + .../go_FirewallEndpointAssociation.yaml | 2 ++ .../privateca/go_CertificateAuthority.yaml | 3 +++ .../go_RegionalSecret.yaml | 14 ++++++++++++++ .../go_EventThreatDetectionCustomModule.yaml | 1 + mmv1/products/securitycenter/go_Source.yaml | 1 + ...zationEventThreatDetectionCustomModule.yaml | 1 + .../go_OrganizationSource.yaml | 1 + .../products/storagetransfer/go_AgentPool.yaml | 1 + mmv1/products/vertexai/go_Endpoint.yaml | 1 + mmv1/products/vertexai/go_IndexEndpoint.yaml | 1 + .../go_IndexEndpointDeployedIndex.yaml | 7 ++++--- mmv1/products/vmwareengine/go_Cluster.yaml | 2 ++ .../vmwareengine/go_ExternalAccessRule.yaml | 2 ++ .../vmwareengine/go_ExternalAddress.yaml | 1 + mmv1/products/vmwareengine/go_Network.yaml | 1 + .../products/vmwareengine/go_PrivateCloud.yaml | 2 ++ mmv1/products/vmwareengine/go_Subnet.yaml | 1 + 75 files changed, 202 insertions(+), 15 deletions(-) diff --git a/mmv1/products/accesscontextmanager/go_GcpUserAccessBinding.yaml b/mmv1/products/accesscontextmanager/go_GcpUserAccessBinding.yaml index 6ecbf3ca748a..7bf14c1faa7a 100644 --- a/mmv1/products/accesscontextmanager/go_GcpUserAccessBinding.yaml +++ b/mmv1/products/accesscontextmanager/go_GcpUserAccessBinding.yaml @@ -59,6 +59,7 @@ examples: org_id: 'ORG_ID' org_domain: 'ORG_DOMAIN' cust_id: 'CUST_ID' + # Has a handwritten test due to AccessPolicy-related tests needing to run synchronously exclude_test: true parameters: # Parent is a path parameter that _cannot_ be read or sent in the request at all. diff --git a/mmv1/products/activedirectory/go_Domain.yaml b/mmv1/products/activedirectory/go_Domain.yaml index 178f80abb609..c97c51bee848 100644 --- a/mmv1/products/activedirectory/go_Domain.yaml +++ b/mmv1/products/activedirectory/go_Domain.yaml @@ -71,6 +71,7 @@ examples: domain_name: 'tfgen' ignore_read_extra: - 'deletion_protection' + # skip the test until Active Directory setup issue got resolved exclude_test: true virtual_fields: - name: 'deletion_protection' diff --git a/mmv1/products/activedirectory/go_DomainTrust.yaml b/mmv1/products/activedirectory/go_DomainTrust.yaml index 60b0e94df18d..27a34ef49887 100644 --- a/mmv1/products/activedirectory/go_DomainTrust.yaml +++ b/mmv1/products/activedirectory/go_DomainTrust.yaml @@ -66,6 +66,9 @@ custom_code: examples: - name: 'active_directory_domain_trust_basic' primary_resource_id: 'ad-domain-trust' + # Fine-grained resource need different autogenerated tests, as + # we need to check destroy during a test step where the parent resource + # still exists and we need to validate that child resource has been deleted exclude_test: true parameters: - name: 'domain' diff --git a/mmv1/products/activedirectory/go_Peering.yaml b/mmv1/products/activedirectory/go_Peering.yaml index 425ab97ef999..c21f077f780c 100644 --- a/mmv1/products/activedirectory/go_Peering.yaml +++ b/mmv1/products/activedirectory/go_Peering.yaml @@ -58,6 +58,7 @@ examples: test_env_vars: org_id: 'ORG_ID' billing_account: 'BILLING_ACCT' + # skip the test until Active Directory setup issue got resolved exclude_test: true exclude_import_test: true parameters: diff --git a/mmv1/products/alloydb/go_Backup.yaml b/mmv1/products/alloydb/go_Backup.yaml index bcfa659e85aa..99f794982de4 100644 --- a/mmv1/products/alloydb/go_Backup.yaml +++ b/mmv1/products/alloydb/go_Backup.yaml @@ -90,6 +90,7 @@ examples: - 'reconciling' - 'update_time' exclude_docs: true + # https://github.com/hashicorp/terraform-provider-google/issues/16231 skip_vcr: true parameters: - name: 'backupId' diff --git a/mmv1/products/apigee/go_EndpointAttachment.yaml b/mmv1/products/apigee/go_EndpointAttachment.yaml index 9bdde7c85e9a..63c0ef97d604 100644 --- a/mmv1/products/apigee/go_EndpointAttachment.yaml +++ b/mmv1/products/apigee/go_EndpointAttachment.yaml @@ -53,12 +53,15 @@ exclude_sweeper: true examples: - name: 'apigee_endpoint_attachment_basic' exclude_test: true + # This is a more verbose version of the above that creates all + # the resources needed for the acceptance test. - name: 'apigee_endpoint_attachment_basic_test' primary_resource_id: 'apigee_endpoint_attachment' test_env_vars: org_id: 'ORG_ID' billing_account: 'BILLING_ACCT' exclude_docs: true + # Resource creation race skip_vcr: true parameters: - name: 'orgId' diff --git a/mmv1/products/apigee/go_Envgroup.yaml b/mmv1/products/apigee/go_Envgroup.yaml index d62f040de901..0c5fdee4bf10 100644 --- a/mmv1/products/apigee/go_Envgroup.yaml +++ b/mmv1/products/apigee/go_Envgroup.yaml @@ -54,12 +54,15 @@ examples: vars: envgroup_name: 'my-envgroup' exclude_test: true + # This is a more verbose version of the above that creates all + # the resources needed for the acceptance test. - name: 'apigee_environment_group_basic_test' primary_resource_id: 'apigee_environment_group' test_env_vars: org_id: 'ORG_ID' billing_account: 'BILLING_ACCT' exclude_docs: true + # Resource creation race skip_vcr: true parameters: - name: 'orgId' diff --git a/mmv1/products/apigee/go_EnvgroupAttachment.yaml b/mmv1/products/apigee/go_EnvgroupAttachment.yaml index 092af54ff581..30aef3a00b65 100644 --- a/mmv1/products/apigee/go_EnvgroupAttachment.yaml +++ b/mmv1/products/apigee/go_EnvgroupAttachment.yaml @@ -65,6 +65,7 @@ examples: org_id: 'ORG_ID' billing_account: 'BILLING_ACCT' exclude_docs: true + # Resource creation race skip_vcr: true parameters: - name: 'envgroupId' diff --git a/mmv1/products/apigee/go_Environment.yaml b/mmv1/products/apigee/go_Environment.yaml index 35aa69656ba7..3b56c304e878 100644 --- a/mmv1/products/apigee/go_Environment.yaml +++ b/mmv1/products/apigee/go_Environment.yaml @@ -64,6 +64,8 @@ examples: vars: environment_name: 'my-environment' exclude_test: true + # This is a more verbose version of the above that creates all + # the resources needed for the acceptance test. - name: 'apigee_environment_basic_test' primary_resource_id: 'apigee_environment' primary_resource_name: 'fmt.Sprintf("organizations/tf-test%s", context["random_suffix"]), fmt.Sprintf("tf-test%s", context["random_suffix"])' @@ -71,6 +73,7 @@ examples: org_id: 'ORG_ID' billing_account: 'BILLING_ACCT' exclude_docs: true + # Resource creation race skip_vcr: true - name: 'apigee_environment_basic_deployment_apiproxy_type_test' primary_resource_id: 'apigee_environment' @@ -79,6 +82,7 @@ examples: org_id: 'ORG_ID' billing_account: 'BILLING_ACCT' exclude_docs: true + # Resource creation race skip_vcr: true - name: 'apigee_environment_patch_update_test' primary_resource_id: 'apigee_environment' @@ -88,6 +92,7 @@ examples: org_id: 'ORG_ID' billing_account: 'BILLING_ACCT' exclude_docs: true + # Resource creation race skip_vcr: true parameters: - name: 'orgId' diff --git a/mmv1/products/apigee/go_Instance.yaml b/mmv1/products/apigee/go_Instance.yaml index 14fe68440663..77b1d9639f37 100644 --- a/mmv1/products/apigee/go_Instance.yaml +++ b/mmv1/products/apigee/go_Instance.yaml @@ -60,39 +60,50 @@ examples: vars: instance_name: 'my-instance-name' exclude_test: true + # This is a more verbose version of the above that creates all + # the resources needed for the acceptance test. - name: 'apigee_instance_basic_test' primary_resource_id: 'apigee_instance' test_env_vars: org_id: 'ORG_ID' billing_account: 'BILLING_ACCT' exclude_docs: true + # Resource creation race skip_vcr: true - name: 'apigee_instance_cidr_range' vars: instance_name: 'my-instance-name' exclude_test: true + # This is a more verbose version of the above that creates all + # the resources needed for the acceptance test. - name: 'apigee_instance_cidr_range_test' primary_resource_id: 'apigee_instance' test_env_vars: org_id: 'ORG_ID' billing_account: 'BILLING_ACCT' exclude_docs: true + # Resource creation race skip_vcr: true - name: 'apigee_instance_ip_range' vars: instance_name: 'my-instance-name' exclude_test: true + # This is a more verbose version of the above that creates all + # the resources needed for the acceptance test. - name: 'apigee_instance_ip_range_test' primary_resource_id: 'apigee_instance' test_env_vars: org_id: 'ORG_ID' billing_account: 'BILLING_ACCT' exclude_docs: true + # Resource creation race skip_vcr: true - name: 'apigee_instance_full' vars: instance_name: 'my-instance-name' exclude_test: true + # This is a more verbose version of the above that creates all + # the resources needed for the acceptance test. - name: 'apigee_instance_full_test' primary_resource_id: 'apigee_instance' min_version: 'beta' @@ -100,6 +111,7 @@ examples: org_id: 'ORG_ID' billing_account: 'BILLING_ACCT' exclude_docs: true + # Resource creation race skip_vcr: true - name: 'apigee_instance_service_attachment_basic_test' primary_resource_id: 'apigee_instance' @@ -107,6 +119,7 @@ examples: org_id: 'ORG_ID' billing_account: 'BILLING_ACCT' exclude_docs: true + # Resource creation race skip_vcr: true parameters: - name: 'orgId' diff --git a/mmv1/products/apigee/go_InstanceAttachment.yaml b/mmv1/products/apigee/go_InstanceAttachment.yaml index 0a1cef6c1414..ab24ecf367e9 100644 --- a/mmv1/products/apigee/go_InstanceAttachment.yaml +++ b/mmv1/products/apigee/go_InstanceAttachment.yaml @@ -59,12 +59,15 @@ examples: instance_name: 'my-instance-name' environment_name: 'my-environment-name' exclude_test: true + # This is a more verbose version of the above that creates all + # the resources needed for the acceptance test. - name: 'apigee_instance_attachment_basic_test' primary_resource_id: 'apigee_instance_attachment' test_env_vars: org_id: 'ORG_ID' billing_account: 'BILLING_ACCT' exclude_docs: true + # Resource creation race skip_vcr: true parameters: - name: 'instanceId' diff --git a/mmv1/products/apigee/go_NatAddress.yaml b/mmv1/products/apigee/go_NatAddress.yaml index 2dacf3a29d13..249ecf8296f1 100644 --- a/mmv1/products/apigee/go_NatAddress.yaml +++ b/mmv1/products/apigee/go_NatAddress.yaml @@ -56,12 +56,15 @@ examples: vars: nat_address_name: 'my-nat-address' exclude_test: true + # This is a more verbose version of the above that creates all + # the resources needed for the acceptance test. - name: 'apigee_nat_address_basic_test' primary_resource_id: 'apigee_nat_address' test_env_vars: org_id: 'ORG_ID' billing_account: 'BILLING_ACCT' exclude_docs: true + # Resource creation race skip_vcr: true parameters: - name: 'instanceId' diff --git a/mmv1/products/apigee/go_Organization.yaml b/mmv1/products/apigee/go_Organization.yaml index 6eafb9bd559e..2a4f8324aa12 100644 --- a/mmv1/products/apigee/go_Organization.yaml +++ b/mmv1/products/apigee/go_Organization.yaml @@ -53,6 +53,8 @@ custom_code: examples: - name: 'apigee_organization_cloud_basic' exclude_test: true + # This is a more verbose version of the above that creates all + # the resources needed for the acceptance test. - name: 'apigee_organization_cloud_basic_test' primary_resource_id: 'org' test_env_vars: @@ -61,9 +63,12 @@ examples: ignore_read_extra: - 'properties' exclude_docs: true + # Resource creation race skip_vcr: true - name: 'apigee_organization_cloud_basic_disable_vpc_peering' exclude_test: true + # This is a more verbose version of the above that creates all + # the resources needed for the acceptance test. - name: 'apigee_organization_cloud_basic_disable_vpc_peering_test' primary_resource_id: 'org' test_env_vars: @@ -72,9 +77,14 @@ examples: ignore_read_extra: - 'properties' exclude_docs: true + # Resource creation race skip_vcr: true - name: 'apigee_organization_cloud_full' exclude_test: true + # This is a more verbose version of the above that creates all + # the resources needed for the acceptance test. While all Apigee + # resources in this test are in the GA API, we depend on a service + # identity resource which is only available in the beta provider. - name: 'apigee_organization_cloud_full_test' primary_resource_id: 'org' min_version: 'beta' @@ -84,9 +94,14 @@ examples: ignore_read_extra: - 'properties' exclude_docs: true + # Resource creation race skip_vcr: true - name: 'apigee_organization_cloud_full_disable_vpc_peering' exclude_test: true + # This is a more verbose version of the above that creates all + # the resources needed for the acceptance test. While all Apigee + # resources in this test are in the GA API, we depend on a service + # identity resource which is only available in the beta provider. - name: 'apigee_organization_cloud_full_disable_vpc_peering_test' primary_resource_id: 'org' min_version: 'beta' @@ -96,6 +111,7 @@ examples: ignore_read_extra: - 'properties' exclude_docs: true + # Resource creation race skip_vcr: true - name: 'apigee_organization_retention_test' primary_resource_id: 'org' @@ -104,6 +120,7 @@ examples: org_id: 'ORG_ID' billing_account: 'BILLING_ACCT' exclude_docs: true + # Resource creation race skip_vcr: true - name: 'apigee_organization_drz_test' primary_resource_id: 'org' @@ -112,6 +129,7 @@ examples: org_id: 'ORG_ID' billing_account: 'BILLING_ACCT' exclude_docs: true + # Resource creation race skip_vcr: true parameters: - name: 'projectId' diff --git a/mmv1/products/appengine/go_FlexibleAppVersion.yaml b/mmv1/products/appengine/go_FlexibleAppVersion.yaml index 77bcc059c282..257f9a0c29da 100644 --- a/mmv1/products/appengine/go_FlexibleAppVersion.yaml +++ b/mmv1/products/appengine/go_FlexibleAppVersion.yaml @@ -76,6 +76,7 @@ examples: ignore_read_extra: - 'noop_on_destroy' - 'deployment.0.zip' + # https://github.com/hashicorp/terraform-provider-google/issues/19040 exclude_test: true virtual_fields: - name: 'noop_on_destroy' diff --git a/mmv1/products/artifactregistry/go_VPCSCConfig.yaml b/mmv1/products/artifactregistry/go_VPCSCConfig.yaml index acee47dde771..a1582a58cc4b 100644 --- a/mmv1/products/artifactregistry/go_VPCSCConfig.yaml +++ b/mmv1/products/artifactregistry/go_VPCSCConfig.yaml @@ -49,6 +49,7 @@ custom_code: examples: - name: 'artifact_registry_vpcsc_config' primary_resource_id: 'my-config' + # Requires VPC SC Policy configured on organization exclude_test: true parameters: - name: 'location' diff --git a/mmv1/products/bigquery/go_DatasetAccess.yaml b/mmv1/products/bigquery/go_DatasetAccess.yaml index 48ce406b6019..ab766f7e9dd0 100644 --- a/mmv1/products/bigquery/go_DatasetAccess.yaml +++ b/mmv1/products/bigquery/go_DatasetAccess.yaml @@ -73,6 +73,7 @@ examples: vars: dataset_id: 'example_dataset' account_name: 'bqowner' + # not importable exclude_test: true - name: 'bigquery_dataset_access_view' primary_resource_id: 'access' @@ -80,12 +81,14 @@ examples: dataset_id: 'example_dataset' dataset_id2: 'example_dataset2' table_id: 'example_table' + # not importable exclude_test: true - name: 'bigquery_dataset_access_authorized_dataset' primary_resource_id: 'access' vars: private: 'private' public: 'public' + # not importable exclude_test: true - name: 'bigquery_dataset_access_authorized_routine' primary_resource_id: 'authorized_routine' @@ -93,6 +96,7 @@ examples: private_dataset: 'private_dataset' public_dataset: 'public_dataset' public_routine: 'public_routine' + # not importable exclude_test: true parameters: properties: diff --git a/mmv1/products/bigquery/go_Job.yaml b/mmv1/products/bigquery/go_Job.yaml index 206be442b5f9..b359f2d41742 100644 --- a/mmv1/products/bigquery/go_Job.yaml +++ b/mmv1/products/bigquery/go_Job.yaml @@ -101,6 +101,7 @@ examples: - 'etag' - 'load.0.destination_table.0.table_id' - 'status.0.state' + # there are a lot of examples for this resource, so omitting some that are similar to others exclude_docs: true - name: 'bigquery_job_copy' primary_resource_id: 'job' @@ -129,6 +130,7 @@ examples: - 'copy.0.source_tables.0.table_id' - 'copy.0.source_tables.1.table_id' - 'status.0.state' + # there are a lot of examples for this resource, so omitting some that are similar to others exclude_docs: true - name: 'bigquery_job_extract' primary_resource_id: 'job' @@ -147,6 +149,7 @@ examples: - 'etag' - 'extract.0.source_table.0.table_id' - 'status.0.state' + # there are a lot of examples for this resource, so omitting some that are similar to others exclude_docs: true parameters: properties: diff --git a/mmv1/products/clouddomains/go_Registration.yaml b/mmv1/products/clouddomains/go_Registration.yaml index bcd6e77d4527..23d41e383b91 100644 --- a/mmv1/products/clouddomains/go_Registration.yaml +++ b/mmv1/products/clouddomains/go_Registration.yaml @@ -59,7 +59,18 @@ custom_code: examples: - name: 'clouddomains_registration_full' primary_resource_id: 'my_registration' + # Must be tested in staging environment with all-time unique domains exclude_test: true + # ignore_read_extra: + # - 'contact_settings.0.registrant_contact.0.phone_number' + # - 'contact_settings.0.registrant_contact.0.fax_number' + # - 'contact_settings.0.registrant_contact.0.postal_address' + # - 'contact_settings.0.admin_contact.0.phone_number' + # - 'contact_settings.0.admin_contact.0.fax_number' + # - 'contact_settings.0.admin_contact.0.postal_address' + # - 'contact_settings.0.technical_contact.0.phone_number' + # - 'contact_settings.0.technical_contact.0.fax_number' + # - 'contact_settings.0.technical_contact.0.postal_address' parameters: - name: 'location' type: String diff --git a/mmv1/products/cloudfunctions2/go_Function.yaml b/mmv1/products/cloudfunctions2/go_Function.yaml index 332e055661b1..6cdd462ac726 100644 --- a/mmv1/products/cloudfunctions2/go_Function.yaml +++ b/mmv1/products/cloudfunctions2/go_Function.yaml @@ -240,6 +240,7 @@ examples: ignore_read_extra: - 'build_config.0.source.0.storage_source.0.object' - 'build_config.0.source.0.storage_source.0.bucket' + # the example file is written in a repetitive way to help acc tests, so exclude exclude_docs: true skip_vcr: true - name: 'cloudfunctions2_cmek_docs' @@ -254,6 +255,7 @@ examples: unencoded-ar-repo: 'ar-repo' kms_key_name: 'cmek-key' project: 'my-project-name' + # this example file will cause IAM conflicts between tests if used to make a test exclude_test: true - name: 'cloudfunctions2_abiu' primary_resource_id: 'function' diff --git a/mmv1/products/cloudidentity/go_Group.yaml b/mmv1/products/cloudidentity/go_Group.yaml index b05a814c452d..a70024d6d5bd 100644 --- a/mmv1/products/cloudidentity/go_Group.yaml +++ b/mmv1/products/cloudidentity/go_Group.yaml @@ -57,6 +57,7 @@ examples: test_env_vars: org_domain: 'ORG_DOMAIN' cust_id: 'CUST_ID' + # Has a handwritten test due to CloudIdentityGroup-related tests needing to run synchronously exclude_test: true parameters: - name: 'initialGroupConfig' diff --git a/mmv1/products/cloudidentity/go_GroupMembership.yaml b/mmv1/products/cloudidentity/go_GroupMembership.yaml index 85068efba3ab..32f83d3fa536 100644 --- a/mmv1/products/cloudidentity/go_GroupMembership.yaml +++ b/mmv1/products/cloudidentity/go_GroupMembership.yaml @@ -50,6 +50,7 @@ examples: test_env_vars: org_domain: 'ORG_DOMAIN' cust_id: 'CUST_ID' + # Has a handwritten test due to CloudIdentityGroup-related tests needing to run synchronously exclude_test: true - name: 'cloud_identity_group_membership_user' primary_resource_id: 'cloud_identity_group_membership_basic' @@ -59,6 +60,7 @@ examples: org_domain: 'ORG_DOMAIN' cust_id: 'CUST_ID' identity_user: 'IDENTITY_USER' + # Has a handwritten test due to CloudIdentityGroup-related tests needing to run synchronously exclude_test: true parameters: - name: 'group' diff --git a/mmv1/products/cloudids/go_Endpoint.yaml b/mmv1/products/cloudids/go_Endpoint.yaml index b70ea42afe03..bf82294490fb 100644 --- a/mmv1/products/cloudids/go_Endpoint.yaml +++ b/mmv1/products/cloudids/go_Endpoint.yaml @@ -51,6 +51,7 @@ exclude_sweeper: true examples: - name: 'cloudids_endpoint' primary_resource_id: 'example-endpoint' + # skip_test set to true since the example is identical to what's in the _test.go file. exclude_test: true parameters: - name: 'location' diff --git a/mmv1/products/compute/go_Address.yaml b/mmv1/products/compute/go_Address.yaml index b6fffa672af5..76623c07133a 100644 --- a/mmv1/products/compute/go_Address.yaml +++ b/mmv1/products/compute/go_Address.yaml @@ -78,7 +78,9 @@ examples: primary_resource_id: 'internal_with_shared_loadbalancer_vip' vars: address_name: 'my-internal-address' + # It is almost identical to internal_with_gce_endpoint exclude_docs: true + # TODO(rileykarson): Remove this example when instance is supported - name: 'instance_with_ip' primary_resource_id: 'static' vars: diff --git a/mmv1/products/compute/go_ForwardingRule.yaml b/mmv1/products/compute/go_ForwardingRule.yaml index 884ed769c166..204b6303b8e9 100644 --- a/mmv1/products/compute/go_ForwardingRule.yaml +++ b/mmv1/products/compute/go_ForwardingRule.yaml @@ -19,6 +19,7 @@ description: | A ForwardingRule resource. A ForwardingRule resource specifies which pool of target virtual machines to forward a packet to if it matches the given [IPAddress, IPProtocol, portRange] tuple. +# Has a separate endpoint for labels exclude_attribution_label: true references: guides: diff --git a/mmv1/products/compute/go_GlobalForwardingRule.yaml b/mmv1/products/compute/go_GlobalForwardingRule.yaml index 73e58307c9ae..9bdd5c337254 100644 --- a/mmv1/products/compute/go_GlobalForwardingRule.yaml +++ b/mmv1/products/compute/go_GlobalForwardingRule.yaml @@ -22,6 +22,7 @@ description: | balancing. For more information, see https://cloud.google.com/compute/docs/load-balancing/http/ +# Has a separate endpoint for labels exclude_attribution_label: true docs: base_url: 'projects/{{project}}/global/forwardingRules' diff --git a/mmv1/products/compute/go_GlobalNetworkEndpoint.yaml b/mmv1/products/compute/go_GlobalNetworkEndpoint.yaml index d35d3606ffa1..e16ff73fe52d 100644 --- a/mmv1/products/compute/go_GlobalNetworkEndpoint.yaml +++ b/mmv1/products/compute/go_GlobalNetworkEndpoint.yaml @@ -71,6 +71,10 @@ examples: primary_resource_id: 'default-endpoint' vars: neg_name: 'my-lb-neg' + # Fine-grained resource need different autogenerated tests, as + # we need to check destroy during a test step where the parent resource + # still exists, rather than during CheckDestroy (when read returns + # nothing because the parent resource has then also been destroyed) exclude_test: true parameters: - name: 'globalNetworkEndpointGroup' diff --git a/mmv1/products/compute/go_HaVpnGateway.yaml b/mmv1/products/compute/go_HaVpnGateway.yaml index c8992c4f6b9c..fa5373c7ad37 100644 --- a/mmv1/products/compute/go_HaVpnGateway.yaml +++ b/mmv1/products/compute/go_HaVpnGateway.yaml @@ -70,6 +70,7 @@ examples: router2_name: 'ha-vpn-router2' exclude_test: true exclude_docs: true + # Multiple fine-grained resources skip_vcr: true - name: 'compute_ha_vpn_gateway_encrypted_interconnect' primary_resource_id: 'vpn-gateway' @@ -81,6 +82,7 @@ examples: address2_name: 'test-address2' router_name: 'test-router' network_name: 'test-network' + # TODO: https://github.com/hashicorp/terraform-provider-google/issues/11504 exclude_test: true parameters: - name: 'region' diff --git a/mmv1/products/compute/go_NetworkEndpoint.yaml b/mmv1/products/compute/go_NetworkEndpoint.yaml index 2ef73b81a452..e83b373ed865 100644 --- a/mmv1/products/compute/go_NetworkEndpoint.yaml +++ b/mmv1/products/compute/go_NetworkEndpoint.yaml @@ -80,6 +80,10 @@ examples: instance_name: 'endpoint-instance' network_name: 'neg-network' subnetwork_name: 'neg-subnetwork' + # Fine-grained resource need different autogenerated tests, as + # we need to check destroy during a test step where the parent resource + # still exists, rather than during CheckDestroy (when read returns + # nothing because the parent resource has then also been destroyed) exclude_test: true parameters: - name: 'zone' diff --git a/mmv1/products/compute/go_NetworkEndpoints.yaml b/mmv1/products/compute/go_NetworkEndpoints.yaml index 73fa84c6dfe7..7fadfe885b54 100644 --- a/mmv1/products/compute/go_NetworkEndpoints.yaml +++ b/mmv1/products/compute/go_NetworkEndpoints.yaml @@ -81,6 +81,10 @@ examples: instance_name: 'endpoint-instance' network_name: 'neg-network' subnetwork_name: 'neg-subnetwork' + # Fine-grained resource need different autogenerated tests, as + # we need to check destroy during a test step where the parent resource + # still exists, rather than during CheckDestroy (when read returns + # nothing because the parent resource has then also been destroyed) exclude_test: true parameters: - name: 'zone' diff --git a/mmv1/products/compute/go_PerInstanceConfig.yaml b/mmv1/products/compute/go_PerInstanceConfig.yaml index 6a7dc1b33a8a..a0e782eb0a23 100644 --- a/mmv1/products/compute/go_PerInstanceConfig.yaml +++ b/mmv1/products/compute/go_PerInstanceConfig.yaml @@ -70,6 +70,10 @@ examples: template_name: 'my-template' igm_name: 'my-igm' disk_name: 'my-disk-name' + # Fine-grained resource need different autogenerated tests, as + # we need to check destroy during a test step where the parent resource + # still exists, rather than during CheckDestroy (when read returns + # nothing because the parent resource has then also been destroyed) exclude_test: true virtual_fields: - name: 'minimal_action' diff --git a/mmv1/products/compute/go_PublicAdvertisedPrefix.yaml b/mmv1/products/compute/go_PublicAdvertisedPrefix.yaml index 23c999455fe1..22b3103e3bab 100644 --- a/mmv1/products/compute/go_PublicAdvertisedPrefix.yaml +++ b/mmv1/products/compute/go_PublicAdvertisedPrefix.yaml @@ -50,6 +50,8 @@ examples: prefixes_name: 'my-prefix' test_env_vars: desc: 'PAP_DESCRIPTION' + # PAPs have very low quota limits and a shared testing range so serialized tests exist in: + # resource_compute_public_advertised_prefix_test.go exclude_test: true parameters: properties: diff --git a/mmv1/products/compute/go_PublicDelegatedPrefix.yaml b/mmv1/products/compute/go_PublicDelegatedPrefix.yaml index 172db2f9d343..2f18589dd719 100644 --- a/mmv1/products/compute/go_PublicDelegatedPrefix.yaml +++ b/mmv1/products/compute/go_PublicDelegatedPrefix.yaml @@ -50,6 +50,8 @@ examples: prefixes_name: 'my-prefix' test_env_vars: desc: 'PAP_DESCRIPTION' + # PAPs have very low quota limits and a shared testing range so serialized tests exist in: + # resource_compute_public_advertised_prefix_test.go exclude_test: true parameters: properties: diff --git a/mmv1/products/compute/go_RegionCommitment.yaml b/mmv1/products/compute/go_RegionCommitment.yaml index b1f9cc354b8a..b287a1369e9d 100644 --- a/mmv1/products/compute/go_RegionCommitment.yaml +++ b/mmv1/products/compute/go_RegionCommitment.yaml @@ -57,11 +57,15 @@ examples: primary_resource_id: 'foobar' vars: region_commitment_name: 'my-region-commitment' + # Creating a resource means signing a contract + # Spanning years that cannot be deleted exclude_test: true - name: 'compute_region_commitment_full' primary_resource_id: 'foobar' vars: region_commitment_name: 'my-full-commitment' + # Creating a resource means signing a contract + # Spanning years that cannot be deleted exclude_test: true parameters: - name: 'region' diff --git a/mmv1/products/compute/go_RegionNetworkEndpoint.yaml b/mmv1/products/compute/go_RegionNetworkEndpoint.yaml index 8f444da0bf00..7db438a8f1f7 100644 --- a/mmv1/products/compute/go_RegionNetworkEndpoint.yaml +++ b/mmv1/products/compute/go_RegionNetworkEndpoint.yaml @@ -87,6 +87,10 @@ examples: subnetwork_name: 'subnetwork' instance_name: 'instance' neg_name: 'portmap-neg' + # Fine-grained resource need different autogenerated tests, as + # we need to check destroy during a test step where the parent resource + # still exists, rather than during CheckDestroy (when read returns + # nothing because the parent resource has then also been destroyed) exclude_test: true parameters: - name: 'region' diff --git a/mmv1/products/compute/go_RegionPerInstanceConfig.yaml b/mmv1/products/compute/go_RegionPerInstanceConfig.yaml index 1e112cad808c..57b7f9a6bbaf 100644 --- a/mmv1/products/compute/go_RegionPerInstanceConfig.yaml +++ b/mmv1/products/compute/go_RegionPerInstanceConfig.yaml @@ -71,6 +71,10 @@ examples: template_name: 'my-template' igm_name: 'my-rigm' disk_name: 'my-disk-name' + # Fine-grained resource need different autogenerated tests, as + # we need to check destroy during a test step where the parent resource + # still exists, rather than during CheckDestroy (when read returns + # nothing because the parent resource has then also been destroyed) exclude_test: true virtual_fields: - name: 'minimal_action' diff --git a/mmv1/products/compute/go_RegionSecurityPolicyRule.yaml b/mmv1/products/compute/go_RegionSecurityPolicyRule.yaml index 6f4d49dfe609..07804a0621ab 100644 --- a/mmv1/products/compute/go_RegionSecurityPolicyRule.yaml +++ b/mmv1/products/compute/go_RegionSecurityPolicyRule.yaml @@ -73,6 +73,8 @@ examples: min_version: 'beta' vars: sec_policy_name: 'policyfornetworkmatch' + # it needs to run synchronously because a region can have only one google_compute_network_edge_security_service. + # there is a robust handwritten test which covers this scenario. exclude_test: true parameters: - name: 'region' diff --git a/mmv1/products/compute/go_RegionUrlMap.yaml b/mmv1/products/compute/go_RegionUrlMap.yaml index c5721e56a3b4..401067154ee8 100644 --- a/mmv1/products/compute/go_RegionUrlMap.yaml +++ b/mmv1/products/compute/go_RegionUrlMap.yaml @@ -122,6 +122,7 @@ examples: regional_l7_xlb_map: 'regional-l7-xlb-map' l7_xlb_proxy: 'l7-xlb-proxy' l7_xlb_forwarding_rule: 'l7-xlb-forwarding-rule' + # Similar to other samples exclude_test: true exclude_docs: true - name: 'region_url_map_path_template_match' diff --git a/mmv1/products/compute/go_Reservation.yaml b/mmv1/products/compute/go_Reservation.yaml index 0dd439601ba7..987061daeb2a 100644 --- a/mmv1/products/compute/go_Reservation.yaml +++ b/mmv1/products/compute/go_Reservation.yaml @@ -69,6 +69,7 @@ examples: org_id: 'ORG_ID' billing_account: 'BILLING_ACCT' exclude_docs: true + # Resource creation race skip_vcr: true parameters: - name: 'zone' diff --git a/mmv1/products/compute/go_UrlMap.yaml b/mmv1/products/compute/go_UrlMap.yaml index 3f6e53e127b2..8a7fb48c2929 100644 --- a/mmv1/products/compute/go_UrlMap.yaml +++ b/mmv1/products/compute/go_UrlMap.yaml @@ -108,6 +108,7 @@ examples: ignore_read_extra: - 'metadata' - 'metadata_startup_script' + # Very similar to external_http_lb_mig_backend_custom_header exclude_test: true exclude_docs: true - name: 'url_map_path_template_match' diff --git a/mmv1/products/containeranalysis/go_Occurrence.yaml b/mmv1/products/containeranalysis/go_Occurrence.yaml index 0c45a07cdf86..8f4a3a1a341f 100644 --- a/mmv1/products/containeranalysis/go_Occurrence.yaml +++ b/mmv1/products/containeranalysis/go_Occurrence.yaml @@ -44,6 +44,7 @@ examples: vars: note_name: 'attestation-note' attestor: 'attestor' + # Occurrence requires custom logic for signing payloads. exclude_test: true parameters: properties: diff --git a/mmv1/products/datacatalog/go_Tag.yaml b/mmv1/products/datacatalog/go_Tag.yaml index f0adc93dd1a7..a63bafbebfed 100644 --- a/mmv1/products/datacatalog/go_Tag.yaml +++ b/mmv1/products/datacatalog/go_Tag.yaml @@ -86,6 +86,7 @@ examples: force_delete: 'false' test_vars_overrides: 'force_delete': 'true' + # omitting doc as it is almost identical to the case of data_catalog_entry_tag_basic exclude_docs: true parameters: - name: 'parent' diff --git a/mmv1/products/dataform/go_Repository.yaml b/mmv1/products/dataform/go_Repository.yaml index 25eccff3b275..e2d02c9c7163 100644 --- a/mmv1/products/dataform/go_Repository.yaml +++ b/mmv1/products/dataform/go_Repository.yaml @@ -49,6 +49,8 @@ examples: secret_name: 'my-secret' key_ring_name: 'example-key-ring' crypto_key_name: 'example-crypto-key-name' + # This example is used in the docs to address this issue + # See : https://github.com/hashicorp/terraform-provider-google/issues/17335 exclude_test: true - name: 'dataform_repository_with_cloudsource_repo' primary_resource_id: 'dataform_repository' @@ -61,6 +63,9 @@ examples: secret_name: 'my-secret' key_ring_name: 'example-key-ring' crypto_key_name: 'example-crypto-key-name' + # Although the Terraform config can be applied without error, the connection between Dataform and the SourceRepo aren't yet functional + # See : https://github.com/hashicorp/terraform-provider-google/issues/17335 + # See : https://issuetracker.google.com/issues/287850319 exclude_docs: true - name: 'dataform_repository_with_cloudsource_repo_and_ssh' primary_resource_id: 'dataform_repository' @@ -70,6 +75,9 @@ examples: dataform_repository_name: 'dataform_repository' data: 'secret-data' secret_name: 'my-secret' + # Although the Terraform config can be applied without error, the connection between Dataform and the SourceRepo aren't yet functional + # See : https://github.com/hashicorp/terraform-provider-google/issues/17335 + # See : https://issuetracker.google.com/issues/287850319 exclude_docs: true parameters: - name: 'region' diff --git a/mmv1/products/dataplex/go_Datascan.yaml b/mmv1/products/dataplex/go_Datascan.yaml index 668d5fca0e40..8bb9d8f79fff 100644 --- a/mmv1/products/dataplex/go_Datascan.yaml +++ b/mmv1/products/dataplex/go_Datascan.yaml @@ -16,6 +16,7 @@ name: 'Datascan' description: | Represents a user-visible job which provides the insights for the related data source. +# User-provided label cannot start with goog- exclude_attribution_label: true references: guides: diff --git a/mmv1/products/dataplex/go_Task.yaml b/mmv1/products/dataplex/go_Task.yaml index 592e88ead4aa..c603754d6167 100644 --- a/mmv1/products/dataplex/go_Task.yaml +++ b/mmv1/products/dataplex/go_Task.yaml @@ -16,6 +16,7 @@ name: 'Task' description: | A Dataplex task represents the work that you want Dataplex to do on a schedule. It encapsulates code, parameters, and the schedule. +# User-provided label cannot start with goog- exclude_attribution_label: true references: guides: diff --git a/mmv1/products/datastream/go_Stream.yaml b/mmv1/products/datastream/go_Stream.yaml index c7dde97bda0e..f005f4347e8c 100644 --- a/mmv1/products/datastream/go_Stream.yaml +++ b/mmv1/products/datastream/go_Stream.yaml @@ -71,6 +71,7 @@ examples: 'deletion_protection': 'false' external_providers: ["random", "time"] exclude_docs: true + # Random provider skip_vcr: true - name: 'datastream_stream_full' primary_resource_id: 'default' @@ -133,6 +134,7 @@ examples: stream_id: 'stream' test_vars_overrides: 'deletion_protection': 'false' + # Requires SQLServer Configuration exclude_test: true - name: 'datastream_stream_postgresql_bigquery_dataset_id' primary_resource_id: 'default' diff --git a/mmv1/products/developerconnect/go_Connection.yaml b/mmv1/products/developerconnect/go_Connection.yaml index f4b5a94856d1..f60cd4718e51 100644 --- a/mmv1/products/developerconnect/go_Connection.yaml +++ b/mmv1/products/developerconnect/go_Connection.yaml @@ -19,18 +19,6 @@ description: | min_version: 'beta' docs: id_format: 'projects/{{project}}/locations/{{location}}/connections/{{connection_id}}' -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - base_url: 'projects/{{project}}/locations/{{location}}/connections' self_link: 'projects/{{project}}/locations/{{location}}/connections/{{connection_id}}' create_url: 'projects/{{project}}/locations/{{location}}/connections?connectionId={{connection_id}}' diff --git a/mmv1/products/documentaiwarehouse/go_DocumentSchema.yaml b/mmv1/products/documentaiwarehouse/go_DocumentSchema.yaml index 3f771b1e5cfc..fcfec08836ac 100644 --- a/mmv1/products/documentaiwarehouse/go_DocumentSchema.yaml +++ b/mmv1/products/documentaiwarehouse/go_DocumentSchema.yaml @@ -34,6 +34,7 @@ custom_code: examples: - name: 'document_ai_warehouse_document_schema_text' primary_resource_id: 'example_text' + # docs only, testing is done in an update test exclude_test: true parameters: - name: 'project_number' diff --git a/mmv1/products/documentaiwarehouse/go_Location.yaml b/mmv1/products/documentaiwarehouse/go_Location.yaml index b66a069a7776..3ad3efc311d2 100644 --- a/mmv1/products/documentaiwarehouse/go_Location.yaml +++ b/mmv1/products/documentaiwarehouse/go_Location.yaml @@ -50,6 +50,7 @@ exclude_sweeper: true examples: - name: 'document_ai_warehouse_location' primary_resource_id: 'example' + # docs only, testing is done in a DocumentSchema update test exclude_test: true parameters: - name: 'project_number' diff --git a/mmv1/products/edgecontainer/go_NodePool.yaml b/mmv1/products/edgecontainer/go_NodePool.yaml index 22eb633d1b4e..fb08b346f254 100644 --- a/mmv1/products/edgecontainer/go_NodePool.yaml +++ b/mmv1/products/edgecontainer/go_NodePool.yaml @@ -65,6 +65,11 @@ examples: - name: 'edgecontainer_local_control_plane_node_pool' primary_resource_id: 'default' exclude_test: true + # Skip the docs generation for the edgecontainer_local_control_plane_node_pool_internal test + # to avoid leaking the machine name, and node location to public. + # Skip the vcr test because as we only have limited machine resources and we don't want it run + # in github presubmit test. + # TODO: enable the test when GDCE have extra prod rack for TF e2e testing. - name: 'edgecontainer_local_control_plane_node_pool_internal' primary_resource_id: 'default' exclude_test: true diff --git a/mmv1/products/filestore/go_Instance.yaml b/mmv1/products/filestore/go_Instance.yaml index 9ea726e4f017..c1e5a186b977 100644 --- a/mmv1/products/filestore/go_Instance.yaml +++ b/mmv1/products/filestore/go_Instance.yaml @@ -71,6 +71,7 @@ examples: primary_resource_id: 'instance' vars: instance_name: 'test-instance' + # https://github.com/GoogleCloudPlatform/magic-modules/pull/5875#discussion_r844285335 exclude_test: true parameters: - name: 'zone' diff --git a/mmv1/products/iap/go_AppEngineService.yaml b/mmv1/products/iap/go_AppEngineService.yaml index d8c92a199810..e4275b2928b1 100644 --- a/mmv1/products/iap/go_AppEngineService.yaml +++ b/mmv1/products/iap/go_AppEngineService.yaml @@ -48,6 +48,7 @@ examples: test_env_vars: org_id: 'ORG_ID' billing_account: 'BILLING_ACCT' + # https://github.com/hashicorp/terraform-provider-google/issues/18936 exclude_test: true parameters: properties: diff --git a/mmv1/products/identityplatform/go_DefaultSupportedIdpConfig.yaml b/mmv1/products/identityplatform/go_DefaultSupportedIdpConfig.yaml index ed143e76a777..76039d73dcb5 100644 --- a/mmv1/products/identityplatform/go_DefaultSupportedIdpConfig.yaml +++ b/mmv1/products/identityplatform/go_DefaultSupportedIdpConfig.yaml @@ -36,6 +36,8 @@ custom_code: examples: - name: 'identity_platform_default_supported_idp_config_basic' primary_resource_id: 'idp_config' + # Skip test due to operating on singleton and the handwritten update test handles this + # If we could spin up a project and enable identity platform we could test this separately exclude_test: true parameters: properties: diff --git a/mmv1/products/integrations/go_AuthConfig.yaml b/mmv1/products/integrations/go_AuthConfig.yaml index 13ad0d13eee9..f2680bdc0eb3 100644 --- a/mmv1/products/integrations/go_AuthConfig.yaml +++ b/mmv1/products/integrations/go_AuthConfig.yaml @@ -43,6 +43,7 @@ examples: primary_resource_id: 'basic_example' vars: auth_config_name: 'test-authconfig' + # This is already part of other examples. exclude_test: true - name: 'integrations_auth_config_advance' primary_resource_id: 'advance_example' diff --git a/mmv1/products/kms/go_KeyRing.yaml b/mmv1/products/kms/go_KeyRing.yaml index 18c8548d75eb..ccf0c59190e6 100644 --- a/mmv1/products/kms/go_KeyRing.yaml +++ b/mmv1/products/kms/go_KeyRing.yaml @@ -44,6 +44,12 @@ custom_code: examples: - name: 'kms_key_ring_basic' primary_resource_id: 'example-keyring' + # Because we can't really delete the resource, we get an error of + # dangling resources with the auto generated tests. The hand-written + # tests do a better job at testing that the key was removed from state + # and that no keyrings are left behind since they create (and destroy) + # a project just for this test, but they require org level IAM roles + # for the test service account. exclude_test: true parameters: - name: 'location' diff --git a/mmv1/products/logging/go_OrganizationSettings.yaml b/mmv1/products/logging/go_OrganizationSettings.yaml index 132304056fd8..ab0840edbbe7 100644 --- a/mmv1/products/logging/go_OrganizationSettings.yaml +++ b/mmv1/products/logging/go_OrganizationSettings.yaml @@ -46,6 +46,7 @@ examples: key_name: 'kms-key' test_env_vars: org_id: 'ORG_TARGET' + # Covered by update test. exclude_test: true parameters: - name: 'organization' diff --git a/mmv1/products/monitoring/go_AlertPolicy.yaml b/mmv1/products/monitoring/go_AlertPolicy.yaml index 682c6abaaf35..a490d99c0fe9 100644 --- a/mmv1/products/monitoring/go_AlertPolicy.yaml +++ b/mmv1/products/monitoring/go_AlertPolicy.yaml @@ -52,16 +52,19 @@ examples: vars: alert_policy_display_name: 'My Alert Policy' exclude_test: true + # skipping tests because the API is full of race conditions - name: 'monitoring_alert_policy_evaluation_missing_data' primary_resource_id: 'alert_policy' vars: alert_policy_display_name: 'My Alert Policy' exclude_test: true + # skipping tests because the API is full of race conditions - name: 'monitoring_alert_policy_forecast_options' primary_resource_id: 'alert_policy' vars: alert_policy_display_name: 'My Alert Policy' exclude_test: true + # skipping tests because the API is full of race conditions - name: 'monitoring_alert_policy_promql_condition' primary_resource_id: 'alert_policy' vars: diff --git a/mmv1/products/monitoring/go_NotificationChannel.yaml b/mmv1/products/monitoring/go_NotificationChannel.yaml index f29abeaee44d..9f6ed58de6bb 100644 --- a/mmv1/products/monitoring/go_NotificationChannel.yaml +++ b/mmv1/products/monitoring/go_NotificationChannel.yaml @@ -69,6 +69,7 @@ examples: primary_resource_id: 'default' vars: display_name: 'Sensitive Notification Channel test' + # sensitive labels will fail the import verification step. exclude_test: true virtual_fields: - name: 'force_delete' diff --git a/mmv1/products/networksecurity/go_FirewallEndpoint.yaml b/mmv1/products/networksecurity/go_FirewallEndpoint.yaml index ce8e36bd2a74..e0e37fb5205c 100644 --- a/mmv1/products/networksecurity/go_FirewallEndpoint.yaml +++ b/mmv1/products/networksecurity/go_FirewallEndpoint.yaml @@ -59,6 +59,7 @@ examples: test_env_vars: org_id: 'ORG_ID' project: 'PROJECT_NAME' + # update tests will take care of create and update. Firewall endpoint creation is too long. exclude_test: true parameters: - name: 'name' diff --git a/mmv1/products/networksecurity/go_FirewallEndpointAssociation.yaml b/mmv1/products/networksecurity/go_FirewallEndpointAssociation.yaml index a7a1923fb1bf..7d3b06033a7a 100644 --- a/mmv1/products/networksecurity/go_FirewallEndpointAssociation.yaml +++ b/mmv1/products/networksecurity/go_FirewallEndpointAssociation.yaml @@ -59,6 +59,8 @@ examples: test_env_vars: org_id: 'ORG_ID' project: 'PROJECT_NAME' + # Handwritten test will take care of creates and updates. + # Firewall endpoint association creation is subjet to firewall endpoint creation which is long and expensive. exclude_test: true parameters: - name: 'name' diff --git a/mmv1/products/privateca/go_CertificateAuthority.yaml b/mmv1/products/privateca/go_CertificateAuthority.yaml index aadd01d638bd..7d29bbd2b36b 100644 --- a/mmv1/products/privateca/go_CertificateAuthority.yaml +++ b/mmv1/products/privateca/go_CertificateAuthority.yaml @@ -109,7 +109,10 @@ examples: 'deletion_protection': 'false' ignore_read_extra: - 'deletion_protection' + # Skip test because it depends on a beta resource, but PrivateCA does + # not have a beta endpoint exclude_test: true + # Multiple IAM bindings on the same key cause non-determinism skip_vcr: true - name: 'privateca_certificate_authority_custom_ski' primary_resource_id: 'default' diff --git a/mmv1/products/secretmanagerregional/go_RegionalSecret.yaml b/mmv1/products/secretmanagerregional/go_RegionalSecret.yaml index 86495df18f5e..5668c9249878 100644 --- a/mmv1/products/secretmanagerregional/go_RegionalSecret.yaml +++ b/mmv1/products/secretmanagerregional/go_RegionalSecret.yaml @@ -18,6 +18,7 @@ description: | A Regional Secret is a logical secret whose value and versions can be created and accessed within a region only. references: guides: + # TODO : Update the below api reference link api: 'https://cloud.google.com/secret-manager/docs/reference/rest/v1/projects.secrets' docs: base_url: 'projects/{{project}}/locations/{{location}}/secrets' @@ -137,6 +138,19 @@ properties: An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }. + # TODO : Add versionAliases field support once google_secret_manager_regional_secret_version is added + # - !ruby/object:Api::Type::KeyValuePairs + # name: versionAliases + # description: | + # Mapping from version alias to version name. + + # A version alias is a string with a maximum length of 63 characters and can contain + # uppercase and lowercase letters, numerals, and the hyphen (-) and underscore ('_') + # characters. An alias string must start with a letter and cannot be the string + # 'latest' or 'NEW'. No more than 50 aliases can be assigned to a given secret. + + # An object containing a list of "key": value pairs. Example: + # { "name": "wrench", "mass": "1.3kg", "count": "3" }. - name: 'customerManagedEncryption' type: NestedObject description: | diff --git a/mmv1/products/securitycenter/go_EventThreatDetectionCustomModule.yaml b/mmv1/products/securitycenter/go_EventThreatDetectionCustomModule.yaml index 7ab70852ea37..b5307ad37468 100644 --- a/mmv1/products/securitycenter/go_EventThreatDetectionCustomModule.yaml +++ b/mmv1/products/securitycenter/go_EventThreatDetectionCustomModule.yaml @@ -41,6 +41,7 @@ examples: type: 'CONFIGURABLE_BAD_IP' test_env_vars: org_id: 'ORG_ID' + # Has a handwritten update test exclude_test: true parameters: - name: 'organization' diff --git a/mmv1/products/securitycenter/go_Source.yaml b/mmv1/products/securitycenter/go_Source.yaml index 25fd3b50afab..c5d2bcdb0c99 100644 --- a/mmv1/products/securitycenter/go_Source.yaml +++ b/mmv1/products/securitycenter/go_Source.yaml @@ -52,6 +52,7 @@ examples: source_display_name: 'My Source' test_env_vars: org_id: 'ORG_ID' + # resource can't be destroyed, so checkdestroy fails unnecessarily exclude_test: true parameters: - name: 'organization' diff --git a/mmv1/products/securitycentermanagement/go_OrganizationEventThreatDetectionCustomModule.yaml b/mmv1/products/securitycentermanagement/go_OrganizationEventThreatDetectionCustomModule.yaml index f21d6f897f36..2fb789923add 100644 --- a/mmv1/products/securitycentermanagement/go_OrganizationEventThreatDetectionCustomModule.yaml +++ b/mmv1/products/securitycentermanagement/go_OrganizationEventThreatDetectionCustomModule.yaml @@ -41,6 +41,7 @@ examples: type: 'CONFIGURABLE_BAD_IP' test_env_vars: org_id: 'ORG_ID' + # Has a handwritten update test exclude_test: true parameters: - name: 'organization' diff --git a/mmv1/products/securitycenterv2/go_OrganizationSource.yaml b/mmv1/products/securitycenterv2/go_OrganizationSource.yaml index 82a6caa5094d..b73c90fa1fab 100644 --- a/mmv1/products/securitycenterv2/go_OrganizationSource.yaml +++ b/mmv1/products/securitycenterv2/go_OrganizationSource.yaml @@ -52,6 +52,7 @@ examples: source_display_name: 'My Source' test_env_vars: org_id: 'ORG_ID' + # resource can't be destroyed, so checkdestroy fails unnecessarily exclude_test: true parameters: - name: 'organization' diff --git a/mmv1/products/storagetransfer/go_AgentPool.yaml b/mmv1/products/storagetransfer/go_AgentPool.yaml index e73efe00eb52..b1b432a2ad04 100644 --- a/mmv1/products/storagetransfer/go_AgentPool.yaml +++ b/mmv1/products/storagetransfer/go_AgentPool.yaml @@ -41,6 +41,7 @@ examples: agent-pool-name: 'agent-pool-example' test_env_vars: project_id: 'PROJECT_NAME' + # Skip generating this test as the example is covered in resource_storage_transfer_agent_pool_test.go exclude_test: true parameters: properties: diff --git a/mmv1/products/vertexai/go_Endpoint.yaml b/mmv1/products/vertexai/go_Endpoint.yaml index 9e3622490261..cb5370436ae5 100644 --- a/mmv1/products/vertexai/go_Endpoint.yaml +++ b/mmv1/products/vertexai/go_Endpoint.yaml @@ -64,6 +64,7 @@ examples: address_name: 'address-name' kms_key_name: 'kms-name' network_name: 'network-name' + # Test is covered by handwritten test to include an update. exclude_test: true parameters: - name: 'location' diff --git a/mmv1/products/vertexai/go_IndexEndpoint.yaml b/mmv1/products/vertexai/go_IndexEndpoint.yaml index 6985729df8c8..d53f4ef623c9 100644 --- a/mmv1/products/vertexai/go_IndexEndpoint.yaml +++ b/mmv1/products/vertexai/go_IndexEndpoint.yaml @@ -61,6 +61,7 @@ examples: primary_resource_id: 'index_endpoint' - name: 'vertex_ai_index_endpoint_with_false_psc' primary_resource_id: 'index_endpoint' + # It's not distinguishable if the psc is false or not set, so we need to skip the test. exclude_import_test: true exclude_docs: true - name: 'vertex_ai_index_endpoint_with_public_endpoint' diff --git a/mmv1/products/vertexai/go_IndexEndpointDeployedIndex.yaml b/mmv1/products/vertexai/go_IndexEndpointDeployedIndex.yaml index 1f8249d5c23a..6d3d0e76bb59 100644 --- a/mmv1/products/vertexai/go_IndexEndpointDeployedIndex.yaml +++ b/mmv1/products/vertexai/go_IndexEndpointDeployedIndex.yaml @@ -225,7 +225,7 @@ properties: description: | The minimum number of replicas this DeployedModel will be always deployed on. required: true - # This field (and its nested fields) is not updatable via the mutateDeployedIndex method in the API, which is the only update method usable by this 'fine-grained' resource. This is why the field is marked as immutable despite the API docs not marking the field as immutable. + # This field (and its nested fields) is not updatable via the mutateDeployedIndex method in the API, which is the only update method usable by this 'fine-grained' resource. This is why the field is marked as immutable despite the API docs not marking the field as immutable. immutable: true properties: - name: 'machineType' @@ -251,12 +251,14 @@ properties: type: Boolean description: | If true, private endpoint's access logs are sent to Cloud Logging. + # This field is not updatable via the mutateDeployedIndex method in the API, which is the only update method usable by this 'fine-grained' resource. This is why the field is marked as immutable despite the API docs not marking the field as immutable. immutable: true default_value: false - name: 'deployedIndexAuthConfig' type: NestedObject description: | If set, the authentication is enabled for the private endpoint. + # This field (and its nested fields) is not updatable via the mutateDeployedIndex method in the API, which is the only update method usable by this 'fine-grained' resource. This is why the field is marked as immutable despite the API docs not marking the field as immutable. immutable: true properties: - name: 'authProvider' @@ -285,8 +287,8 @@ properties: The value should be the name of the address (https://cloud.google.com/compute/docs/reference/rest/v1/addresses) Example: ['vertex-ai-ip-range']. For more information about subnets and network IP ranges, please see https://cloud.google.com/vpc/docs/subnets#manually_created_subnet_ip_ranges. - # This field is not updatable via the mutateDeployedIndex method in the API, which is the only update method usable by this 'fine-grained' resource. This is why the field is marked as immutable despite the API docs not marking the field as immutable. immutable: true + # This field is not updatable via the mutateDeployedIndex method in the API, which is the only update method usable by this 'fine-grained' resource. This is why the field is marked as immutable despite the API docs not marking the field as immutable. item_type: type: String - name: 'deploymentGroup' @@ -295,6 +297,5 @@ properties: The deployment group can be no longer than 64 characters (eg: 'test', 'prod'). If not set, we will use the 'default' deployment group. Creating deployment_groups with reserved_ip_ranges is a recommended practice when the peered network has multiple peering ranges. This creates your deployments from predictable IP spaces for easier traffic administration. Also, one deployment_group (except 'default') can only be used with the same reserved_ip_ranges which means if the deployment_group has been used with reserved_ip_ranges: [a, b, c], using it with [a, b] or [d, e] is disallowed. [See the official documentation here](https://cloud.google.com/vertex-ai/docs/reference/rest/v1/projects.locations.indexEndpoints#DeployedIndex.FIELDS.deployment_group). Note: we only support up to 5 deployment groups (not including 'default'). - # This field is not updatable via the mutateDeployedIndex method in the API, which is the only update method usable by this 'fine-grained' resource. This is why the field is marked as immutable despite the API docs not marking the field as immutable. immutable: true default_value: "default" diff --git a/mmv1/products/vmwareengine/go_Cluster.yaml b/mmv1/products/vmwareengine/go_Cluster.yaml index 307ffe088917..9bd7b0adae34 100644 --- a/mmv1/products/vmwareengine/go_Cluster.yaml +++ b/mmv1/products/vmwareengine/go_Cluster.yaml @@ -67,6 +67,7 @@ examples: management_cluster_id: 'sample-mgmt-cluster' test_env_vars: region: 'REGION' + # update tests will take care of create and update. PC and cluster creation is expensive and node reservation is required. exclude_test: true - name: 'vmware_engine_cluster_full' primary_resource_id: 'vmw-ext-cluster' @@ -77,6 +78,7 @@ examples: management_cluster_id: 'sample-mgmt-cluster' test_env_vars: region: 'REGION' + # update tests will take care of create and update. PC and cluster creation is expensive and node reservation is required. exclude_test: true parameters: - name: 'parent' diff --git a/mmv1/products/vmwareengine/go_ExternalAccessRule.yaml b/mmv1/products/vmwareengine/go_ExternalAccessRule.yaml index 41d29f73ae78..38259e619e6c 100644 --- a/mmv1/products/vmwareengine/go_ExternalAccessRule.yaml +++ b/mmv1/products/vmwareengine/go_ExternalAccessRule.yaml @@ -59,6 +59,7 @@ examples: network_policy_id: 'sample-np' test_env_vars: region: 'REGION' + # update tests will take care of create and update. The test id dependent on PC creation, which is expensive and requires node reservation. exclude_test: true - name: 'vmware_engine_external_access_rule_full' primary_resource_id: 'vmw-engine-external-access-rule' @@ -71,6 +72,7 @@ examples: external_address_id: 'sample-ea' test_env_vars: region: 'REGION' + # update tests will take care of create and update. The test id dependent on PC creation, which is expensive and requires node reservation. exclude_test: true parameters: - name: 'parent' diff --git a/mmv1/products/vmwareengine/go_ExternalAddress.yaml b/mmv1/products/vmwareengine/go_ExternalAddress.yaml index 4a8267f88822..61b1bba597bb 100644 --- a/mmv1/products/vmwareengine/go_ExternalAddress.yaml +++ b/mmv1/products/vmwareengine/go_ExternalAddress.yaml @@ -66,6 +66,7 @@ examples: private_cloud_id: 'sample-pc' management_cluster_id: 'sample-mgmt-cluster' network_policy_id: 'sample-np' + # update tests will take care of all CRUD tests. Parent PC creation is expensive and node reservation is required. exclude_test: true parameters: - name: 'parent' diff --git a/mmv1/products/vmwareengine/go_Network.yaml b/mmv1/products/vmwareengine/go_Network.yaml index 16ede79d24fd..ccb93ccc3497 100644 --- a/mmv1/products/vmwareengine/go_Network.yaml +++ b/mmv1/products/vmwareengine/go_Network.yaml @@ -60,6 +60,7 @@ examples: org_id: 'ORG_ID' billing_account: 'BILLING_ACCT' external_providers: ["random", "time"] + # update tests will take care of create and update. Legacy network needs to be created on an isolated project. exclude_test: true parameters: - name: 'location' diff --git a/mmv1/products/vmwareengine/go_PrivateCloud.yaml b/mmv1/products/vmwareengine/go_PrivateCloud.yaml index 1e920239df4f..d161f29c96d1 100644 --- a/mmv1/products/vmwareengine/go_PrivateCloud.yaml +++ b/mmv1/products/vmwareengine/go_PrivateCloud.yaml @@ -68,6 +68,7 @@ examples: management_cluster_id: 'sample-mgmt-cluster' test_env_vars: region: 'REGION' + # update tests will take care of create and update. PC creation is expensive and node reservation is required. exclude_test: true - name: 'vmware_engine_private_cloud_full' primary_resource_id: 'vmw-engine-pc' @@ -77,6 +78,7 @@ examples: management_cluster_id: 'sample-mgmt-cluster' test_env_vars: region: 'REGION' + # update tests will take care of create and update. PC creation is expensive and node reservation is required. exclude_test: true virtual_fields: - name: 'deletion_delay_hours' diff --git a/mmv1/products/vmwareengine/go_Subnet.yaml b/mmv1/products/vmwareengine/go_Subnet.yaml index e7fe92083e2a..bbdeea232677 100644 --- a/mmv1/products/vmwareengine/go_Subnet.yaml +++ b/mmv1/products/vmwareengine/go_Subnet.yaml @@ -62,6 +62,7 @@ examples: subnet_id: 'service-1' test_env_vars: region: 'REGION' + # update tests will take care of read and update. Parent PC creation is expensive and node reservation is required. exclude_test: true parameters: - name: 'parent'