From 5ad072a5adb3895afd8a454536353718f8ec9bf0 Mon Sep 17 00:00:00 2001 From: Guangning E Date: Fri, 16 May 2025 10:41:18 +0800 Subject: [PATCH 1/4] Add location check for serverless --- cloud/resource_pulsar_cluster.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/cloud/resource_pulsar_cluster.go b/cloud/resource_pulsar_cluster.go index d235f393..24539d45 100644 --- a/cloud/resource_pulsar_cluster.go +++ b/cloud/resource_pulsar_cluster.go @@ -469,6 +469,12 @@ func resourcePulsarClusterCreate(ctx context.Context, d *schema.ResourceData, me "release_channel must be rapid for ursa engine or serverless instance")) } } + if pulsarInstance.IsServerless() { + if location != "us-east-2" && location != "us-central1" && location != "eastus" { + return diag.FromErr(fmt.Errorf("ERROR_CREATE_PULSAR_CLUSTER: " + + "location must be us-east-2 for aws, us-central1 for gcp or eastus for azure for serverless instance")) + } + } if !ursaEnabled && !pulsarInstance.IsServerless() { pulsarCluster.Spec.BookKeeper = bookkeeper } From 46fc6076aa5b3cc22bb911ff43f36250366c541c Mon Sep 17 00:00:00 2001 From: Guangning E Date: Fri, 16 May 2025 11:45:08 +0800 Subject: [PATCH 2/4] Fixed location check --- cloud/resource_pulsar_cluster.go | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/cloud/resource_pulsar_cluster.go b/cloud/resource_pulsar_cluster.go index 24539d45..4c5fc433 100644 --- a/cloud/resource_pulsar_cluster.go +++ b/cloud/resource_pulsar_cluster.go @@ -470,9 +470,21 @@ func resourcePulsarClusterCreate(ctx context.Context, d *schema.ResourceData, me } } if pulsarInstance.IsServerless() { - if location != "us-east-2" && location != "us-central1" && location != "eastus" { + if pulsarInstance.Spec.PoolRef.Namespace != "streamnative" { return diag.FromErr(fmt.Errorf("ERROR_CREATE_PULSAR_CLUSTER: " + - "location must be us-east-2 for aws, us-central1 for gcp or eastus for azure for serverless instance")) + "pool member must be in streamnative namespace for serverless instance")) + } + if pulsarInstance.Spec.PoolRef.Name == "shared-aws" && location != "us-east-2" { + return diag.FromErr(fmt.Errorf("ERROR_CREATE_PULSAR_CLUSTER: " + + "location must be us-east-2 for aws serverless instance")) + } + if pulsarInstance.Spec.PoolRef.Name == "shared-gcp" && location != "us-central1" { + return diag.FromErr(fmt.Errorf("ERROR_CREATE_PULSAR_CLUSTER: " + + "location must be us-central1 for gcp serverless instance")) + } + if pulsarInstance.Spec.PoolRef.Name == "shared-azure" && location != "eastus" { + return diag.FromErr(fmt.Errorf("ERROR_CREATE_PULSAR_CLUSTER: " + + "location must be eastus for azure serverless instance")) } } if !ursaEnabled && !pulsarInstance.IsServerless() { From 7a5915f421780c32a84667906481fa8dba769605 Mon Sep 17 00:00:00 2001 From: Guangning E Date: Fri, 23 May 2025 19:53:26 +0800 Subject: [PATCH 3/4] Fixed serverless check --- cloud/resource_pulsar_cluster.go | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/cloud/resource_pulsar_cluster.go b/cloud/resource_pulsar_cluster.go index 4c5fc433..45fa77a7 100644 --- a/cloud/resource_pulsar_cluster.go +++ b/cloud/resource_pulsar_cluster.go @@ -474,17 +474,9 @@ func resourcePulsarClusterCreate(ctx context.Context, d *schema.ResourceData, me return diag.FromErr(fmt.Errorf("ERROR_CREATE_PULSAR_CLUSTER: " + "pool member must be in streamnative namespace for serverless instance")) } - if pulsarInstance.Spec.PoolRef.Name == "shared-aws" && location != "us-east-2" { + if location != "us-east-2" && location != "us-central1" && location != "eastus" { return diag.FromErr(fmt.Errorf("ERROR_CREATE_PULSAR_CLUSTER: " + - "location must be us-east-2 for aws serverless instance")) - } - if pulsarInstance.Spec.PoolRef.Name == "shared-gcp" && location != "us-central1" { - return diag.FromErr(fmt.Errorf("ERROR_CREATE_PULSAR_CLUSTER: " + - "location must be us-central1 for gcp serverless instance")) - } - if pulsarInstance.Spec.PoolRef.Name == "shared-azure" && location != "eastus" { - return diag.FromErr(fmt.Errorf("ERROR_CREATE_PULSAR_CLUSTER: " + - "location must be eastus for azure serverless instance")) + "location must be us-east-2 on aws, us-central1 on gcloud or eastus on azure for serverless instance")) } } if !ursaEnabled && !pulsarInstance.IsServerless() { From c763e0cb8400ab00d534cd59b008a6ad8b56206e Mon Sep 17 00:00:00 2001 From: Guangning E Date: Fri, 23 May 2025 19:54:10 +0800 Subject: [PATCH 4/4] Fixed serverless check --- cloud/resource_pulsar_cluster.go | 4 ---- 1 file changed, 4 deletions(-) diff --git a/cloud/resource_pulsar_cluster.go b/cloud/resource_pulsar_cluster.go index 45fa77a7..cd04ed06 100644 --- a/cloud/resource_pulsar_cluster.go +++ b/cloud/resource_pulsar_cluster.go @@ -470,10 +470,6 @@ func resourcePulsarClusterCreate(ctx context.Context, d *schema.ResourceData, me } } if pulsarInstance.IsServerless() { - if pulsarInstance.Spec.PoolRef.Namespace != "streamnative" { - return diag.FromErr(fmt.Errorf("ERROR_CREATE_PULSAR_CLUSTER: " + - "pool member must be in streamnative namespace for serverless instance")) - } if location != "us-east-2" && location != "us-central1" && location != "eastus" { return diag.FromErr(fmt.Errorf("ERROR_CREATE_PULSAR_CLUSTER: " + "location must be us-east-2 on aws, us-central1 on gcloud or eastus on azure for serverless instance"))