You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@datalab.apache.org by hs...@apache.org on 2022/09/02 16:59:25 UTC

[incubator-datalab] 01/01: fixed add compute form, fixed reques for HDInsight

This is an automated email from the ASF dual-hosted git repository.

hshpak pushed a commit to branch fix/hdinsight-request-endpoint
in repository https://gitbox.apache.org/repos/asf/incubator-datalab.git

commit 3ec31493e85cf7bdba2889a3d8d515892f4b2442
Author: Hennadii_Shpak <bo...@gmail.com>
AuthorDate: Fri Sep 2 19:58:55 2022 +0300

    fixed add compute form, fixed reques for HDInsight
---
 ...utational-resource-create-dialog.component.html |  5 ++-
 ...mputational-resource-create-dialog.component.ts |  1 +
 .../computational-resource-create.model.ts         | 38 ++++++++++++++++++----
 3 files changed, 37 insertions(+), 7 deletions(-)

diff --git a/services/self-service/src/main/resources/webapp/src/app/resources/computational/computational-resource-create-dialog/computational-resource-create-dialog.component.html b/services/self-service/src/main/resources/webapp/src/app/resources/computational/computational-resource-create-dialog/computational-resource-create-dialog.component.html
index c4514f134..ced2fa9bb 100644
--- a/services/self-service/src/main/resources/webapp/src/app/resources/computational/computational-resource-create-dialog/computational-resource-create-dialog.component.html
+++ b/services/self-service/src/main/resources/webapp/src/app/resources/computational/computational-resource-create-dialog/computational-resource-create-dialog.component.html
@@ -132,7 +132,10 @@
               </div>
             </div>
 
-            <div class="control-group" *ngIf="PROVIDER !== 'azure'" [hidden]="!selectedImage.templates.length">
+            <div class="control-group"
+                 *ngIf="(clusterTypes | isElementAvailable : isHasHDInside) || PROVIDER !== providerList.azure"
+                 [hidden]="!selectedImage.templates.length"
+            >
               <label class="label">Select template</label>
               <div class="control selector-wrapper">
                 <mat-form-field>
diff --git a/services/self-service/src/main/resources/webapp/src/app/resources/computational/computational-resource-create-dialog/computational-resource-create-dialog.component.ts b/services/self-service/src/main/resources/webapp/src/app/resources/computational/computational-resource-create-dialog/computational-resource-create-dialog.component.ts
index 93a8aabd4..e8daab11e 100644
--- a/services/self-service/src/main/resources/webapp/src/app/resources/computational/computational-resource-create-dialog/computational-resource-create-dialog.component.ts
+++ b/services/self-service/src/main/resources/webapp/src/app/resources/computational/computational-resource-create-dialog/computational-resource-create-dialog.component.ts
@@ -198,6 +198,7 @@ export class ComputationalResourceCreateDialogComponent implements OnInit {
 
       this.minInstanceNumber = this.selectedImage.limits[activeImage.total_instance_number_min];
       this.maxInstanceNumber = this.selectedImage.limits[activeImage.total_instance_number_max];
+
       if (this.PROVIDER === 'gcp' && this.selectedImage.image === DockerImageName.dataEngineService) {
         this.maxInstanceNumber = this.selectedImage.limits[activeImage.total_instance_number_max] - 1;
         this.minPreemptibleInstanceNumber = this.selectedImage.limits.min_dataproc_preemptible_instance_count;
diff --git a/services/self-service/src/main/resources/webapp/src/app/resources/computational/computational-resource-create-dialog/computational-resource-create.model.ts b/services/self-service/src/main/resources/webapp/src/app/resources/computational/computational-resource-create-dialog/computational-resource-create.model.ts
index 59b1d3669..6d5ed8707 100644
--- a/services/self-service/src/main/resources/webapp/src/app/resources/computational/computational-resource-create-dialog/computational-resource-create.model.ts
+++ b/services/self-service/src/main/resources/webapp/src/app/resources/computational/computational-resource-create-dialog/computational-resource-create.model.ts
@@ -30,9 +30,21 @@ export class ComputationalResourceModel {
 
   public createComputationalResource(parameters, image, env, provider, gpu?): Observable<{}> {
     const config = parameters.configuration_parameters ? JSON.parse(parameters.configuration_parameters) : null;
+    const requestObj = this.createRequestObject(parameters, image, env, provider, config, gpu);
+    const dataEngineServiceCondition = (provider === 'aws' && image.image === 'docker.datalab-dataengine-service')
+      || (provider === 'gcp' && image.image === 'docker.datalab-dataengine-service')
+      || (provider === 'azure' && image.template_name === 'HDInsight cluster');
 
+    if (dataEngineServiceCondition) {
+      return this.userResourceService.createComputationalResource_DataengineService(requestObj, provider);
+    } else {
+      return this.userResourceService.createComputationalResource_Dataengine(requestObj, provider);
+    }
+  }
+
+  private createRequestObject(parameters, image, env, provider, config, gpu?) {
     if (provider === 'aws' && image.image === 'docker.datalab-dataengine-service') {
-      return this.userResourceService.createComputationalResource_DataengineService({
+      return {
         name: parameters.cluster_alias_name,
         emr_instance_count: parameters.instance_number,
         emr_master_instance_type: parameters.shape_master,
@@ -46,9 +58,9 @@ export class ComputationalResourceModel {
         config: config,
         project: env.project,
         custom_tag: parameters.custom_tag
-      }, provider);
+      };
     } else if (provider === 'gcp' && image.image === 'docker.datalab-dataengine-service') {
-      return this.userResourceService.createComputationalResource_DataengineService({
+      return {
         template_name: image.template_name,
         image: image.image,
         notebook_name: env.name,
@@ -67,9 +79,23 @@ export class ComputationalResourceModel {
         master_gpu_count: gpu ? parameters.master_GPU_count : null,
         slave_gpu_count: gpu ? parameters.slave_GPU_count : null,
         gpu_enabled: gpu
-      }, provider);
+      };
+    } else if (provider === 'azure' && image.template_name === 'HDInsight cluster') {
+      return {
+        template_name: image.template_name,
+        image: image.image,
+        name: parameters.cluster_alias_name,
+        project: env.project,
+        custom_tag: parameters.custom_tag,
+        notebook_name: env.name,
+        config: config,
+        hdinsight_master_instance_type: parameters.shape_master,
+        hdinsight_slave_instance_type: parameters.shape_slave,
+        hdinsight_version: parameters.version,
+        hdinsight_slave_count: (parameters.instance_number - 2),
+      };
     } else {
-      return this.userResourceService.createComputationalResource_Dataengine({
+      return {
         name: parameters.cluster_alias_name,
         dataengine_instance_count: parameters.instance_number,
         master_instance_shape: parameters.shape_master,
@@ -85,7 +111,7 @@ export class ComputationalResourceModel {
         config: config,
         project: env.project,
         custom_tag: parameters.custom_tag
-      }, provider);
+      };
     }
   }
 }


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@datalab.apache.org
For additional commands, e-mail: commits-help@datalab.apache.org