diff --git a/google/services/discoveryengine/resource_discovery_engine_data_store.go b/google/services/discoveryengine/resource_discovery_engine_data_store.go index fff9d56e7d1..7eb35d0740f 100644 --- a/google/services/discoveryengine/resource_discovery_engine_data_store.go +++ b/google/services/discoveryengine/resource_discovery_engine_data_store.go @@ -324,6 +324,10 @@ func resourceDiscoveryEngineDataStoreCreate(d *schema.ResourceData, meta interfa return err } + if d.Get("create_advanced_site_search").(bool) && d.Get("content_config").(string) != "PUBLIC_WEBSITE" { + return fmt.Errorf("AdvancedSiteSearchConfig is only supported for advanced site search Data Store with content_config=PUBLIC_WEBSITE") + } + obj := make(map[string]interface{}) displayNameProp, err := expandDiscoveryEngineDataStoreDisplayName(d.Get("display_name"), d, config) if err != nil { diff --git a/google/services/discoveryengine/resource_discovery_engine_data_store_generated_test.go b/google/services/discoveryengine/resource_discovery_engine_data_store_generated_test.go index 1cc08bc3f95..8f1d9a56d3e 100644 --- a/google/services/discoveryengine/resource_discovery_engine_data_store_generated_test.go +++ b/google/services/discoveryengine/resource_discovery_engine_data_store_generated_test.go @@ -198,7 +198,7 @@ resource "google_discovery_engine_data_store" "document_processing_config_layout data_store_id = "tf-test-data-store-id%{random_suffix}" display_name = "tf-test-structured-datastore" industry_vertical = "GENERIC" - content_config = "CONTENT_REQUIRED" + content_config = "PUBLIC_WEBSITE" solution_types = ["SOLUTION_TYPE_SEARCH"] create_advanced_site_search = true document_processing_config { diff --git a/google/services/discoveryengine/resource_discovery_engine_target_site.go b/google/services/discoveryengine/resource_discovery_engine_target_site.go index c4db9cdb7fe..be4ce5c70a6 100644 --- a/google/services/discoveryengine/resource_discovery_engine_target_site.go +++ b/google/services/discoveryengine/resource_discovery_engine_target_site.go @@ -22,6 +22,7 @@ import ( "log" "net/http" "reflect" + "strings" "time" "github.com/hashicorp/terraform-plugin-sdk/v2/helper/customdiff" @@ -212,6 +213,10 @@ func resourceDiscoveryEngineTargetSiteCreate(d *schema.ResourceData, meta interf return err } + // Replace the location + location := d.Get("location").(string) + url = strings.Replace(url, "{{location}}", location, -1) + log.Printf("[DEBUG] Creating new TargetSite: %#v", obj) billingProject := "" @@ -528,7 +533,13 @@ func flattenDiscoveryEngineTargetSiteFailureReasonQuotaFailureTotalRequiredQuota } func expandDiscoveryEngineTargetSiteProvidedUriPattern(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) { - return v, nil + pattern := v.(string) + + // Remove http:// or https:// from the URI pattern + pattern = strings.TrimPrefix(pattern, "http://") + pattern = strings.TrimPrefix(pattern, "https://") + + return pattern, nil } func expandDiscoveryEngineTargetSiteType(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {