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 <[email protected]> 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: [email protected] For additional commands, e-mail: [email protected]
