@@ -32,7 +32,8 @@ func ensureServerlessPrivateEndpoints(service *workflow.Context, groupID string,
3232 if deploymentSpec == nil {
3333 return workflow .Terminate (workflow .ServerlessPrivateEndpointReady , "deployment spec is empty" )
3434 }
35- if result := IsClusterSupportServerlessPE (deploymentSpec ); ! result .IsOk () {
35+ providerName , result := IsClusterSupportServerlessPE (deploymentSpec )
36+ if ! result .IsOk () {
3637 return result
3738 }
3839
@@ -42,7 +43,7 @@ func ensureServerlessPrivateEndpoints(service *workflow.Context, groupID string,
4243 return workflow .OK ()
4344 }
4445
45- result : = syncServerlessPrivateEndpoints (context .Background (), service , groupID , deploymentName , provider . ProviderName ( deploymentSpec . ProviderSettings . BackingProviderName ) , deploymentSpec .PrivateEndpoints )
46+ result = syncServerlessPrivateEndpoints (context .Background (), service , groupID , deploymentName , providerName , deploymentSpec .PrivateEndpoints )
4647 if ! result .IsOk () {
4748 service .SetConditionFromResult (status .ServerlessPrivateEndpointReadyType , result )
4849 return result
@@ -51,13 +52,24 @@ func ensureServerlessPrivateEndpoints(service *workflow.Context, groupID string,
5152 return result
5253}
5354
54- func IsClusterSupportServerlessPE (deploymentSpec * mdbv1.ServerlessSpec ) workflow.Result {
55- if deploymentSpec .ProviderSettings .BackingProviderName != string (provider .ProviderAWS ) &&
56- deploymentSpec .ProviderSettings .BackingProviderName != string (provider .ProviderAzure ) {
57- return workflow .Terminate (workflow .Internal , "serverless private endpoints are only supported for AWS and Azure" )
55+ func IsClusterSupportServerlessPE (deploymentSpec * mdbv1.ServerlessSpec ) (provider.ProviderName , workflow.Result ) {
56+ if deploymentSpec .ProviderSettings .BackingProviderName == string (provider .ProviderAWS ) {
57+ return provider .ProviderAWS , workflow .OK ()
5858 }
5959
60- return workflow .OK ()
60+ if deploymentSpec .ProviderSettings .BackingProviderName == string (provider .ProviderAzure ) {
61+ return provider .ProviderAzure , workflow .OK ()
62+ }
63+
64+ if deploymentSpec .ProviderSettings .ProviderName == provider .ProviderAWS {
65+ return provider .ProviderAWS , workflow .OK ()
66+ }
67+
68+ if deploymentSpec .ProviderSettings .ProviderName == provider .ProviderAzure {
69+ return provider .ProviderAzure , workflow .OK ()
70+ }
71+
72+ return "" , workflow .Terminate (workflow .Internal , "serverless private endpoints are only supported for AWS and Azure" )
6173}
6274
6375func syncServerlessPrivateEndpoints (ctx context.Context , service * workflow.Context , groupID , deploymentName string , providerName provider.ProviderName , desiredPE []mdbv1.ServerlessPrivateEndpoint ) workflow.Result {
0 commit comments