This is an automated email from the ASF dual-hosted git repository. ytykhun pushed a commit to branch DATALAB-2431 in repository https://gitbox.apache.org/repos/asf/incubator-datalab.git
commit c402fd428606ddaead510be84e70d781b0d40ff9 Author: Yurii Tykhun <[email protected]> AuthorDate: Fri Jun 18 11:26:13 2021 +0300 [DATALAB-2431] added new parameters for Apache Standalone cluster --- .../cluster-details/cluster-details.component.html | 118 +++++---- ...utational-resource-create-dialog.component.html | 292 +++++++++++---------- ...mputational-resource-create-dialog.component.ts | 2 - .../webapp/src/dictionary/gcp.dictionary.ts | 3 +- 4 files changed, 216 insertions(+), 199 deletions(-) diff --git a/services/self-service/src/main/resources/webapp/src/app/resources/computational/cluster-details/cluster-details.component.html b/services/self-service/src/main/resources/webapp/src/app/resources/computational/cluster-details/cluster-details.component.html index d8168b9..e353385 100644 --- a/services/self-service/src/main/resources/webapp/src/app/resources/computational/cluster-details/cluster-details.component.html +++ b/services/self-service/src/main/resources/webapp/src/app/resources/computational/cluster-details/cluster-details.component.html @@ -46,10 +46,10 @@ <div class="col"><span>{{ resource.template_name }}</span></div> </div> <div class="row-wrap" *ngIf="resource.image === 'docker.datalab-dataengine-service'"> - <div class="col"> - <p>Cluster version:</p> - </div> - <div class="col"><span>{{ resource[DICTIONARY[PROVIDER].cluster_version] }}</span></div> + <div class="col"> + <p>Cluster version:</p> + </div> + <div class="col"><span>{{ resource[DICTIONARY[PROVIDER].cluster_version] }}</span></div> </div> <div class="row-wrap"> <div class="col"> @@ -57,15 +57,14 @@ </div> <div class="col" (mouseover)="isEllipsisActive($event)"> <span>{{resource.computational_name}}</span> -<!-- <div class="tooltip" [style.visibility]="tooltip ? 'visible': 'hidden'">{{resource.computational_name}}--> -<!-- </div>--> + <!-- <div class="tooltip" [style.visibility]="tooltip ? 'visible': 'hidden'">{{resource.computational_name}}</div> --> </div> </div> <div class="row-wrap"> - <div class="col" - *ngIf="DICTIONARY[PROVIDER].cloud_provider === 'gcp' && resource.image === 'docker.datalab-dataengine-service'; else inst"> - <p>Master instance number:</p> - </div> + <div class="col" + *ngIf="DICTIONARY[PROVIDER].cloud_provider === 'gcp'; else inst"> + <p>Master instance number:</p> + </div> <ng-template #inst> <div class="col"> <p>Total instance number:</p> @@ -73,29 +72,29 @@ </ng-template> <div class="col"> <span *ngIf="DICTIONARY[PROVIDER].cloud_provider === 'aws'">{{ resource.totalInstanceCount > 0 ? resource.totalInstanceCount : resource.dataengine_instance_count}}</span> - <span *ngIf="DICTIONARY[PROVIDER].cloud_provider === 'gcp' && resource.image === 'docker.datalab-dataengine' || DICTIONARY[PROVIDER].cloud_provider === 'azure'">{{resource.dataengine_instance_count}}</span> - <span *ngIf="DICTIONARY[PROVIDER].cloud_provider === 'gcp' && resource.image === 'docker.datalab-dataengine-service'">1</span> + <span *ngIf="DICTIONARY[PROVIDER].cloud_provider === 'azure'">{{resource.dataengine_instance_count}}</span> + <span *ngIf="DICTIONARY[PROVIDER].cloud_provider === 'gcp'">1</span> </div> </div> <div class="row-wrap" - *ngIf="DICTIONARY[PROVIDER].cloud_provider === 'gcp' && resource.image === 'docker.datalab-dataengine-service'"> - <div class="col"> - <p>Slave instance number:</p> - </div> - <div class="col"><span>{{ resource.totalInstanceCount - 1}}</span></div> + *ngIf="DICTIONARY[PROVIDER].cloud_provider === 'gcp'"> + <div class="col"> + <p>Slave instance number:</p> </div> + <div class="col"><span>{{ resource.totalInstanceCount - 1}}</span></div> + </div> <div class="row-wrap"> <div class="col"> <p>Master instance size:</p> </div> <div class="col"><span>{{ resource[DICTIONARY[PROVIDER][resource.image].master_node_shape] }}</span></div> </div> - <div class="row-wrap" *ngIf="resource.image === 'docker.datalab-dataengine-service'"> - <div class="col"> - <p>Slave instance size:</p> - </div> - <div class="col"><span>{{ resource[DICTIONARY[PROVIDER][resource.image].slave_node_shape] }}</span></div> + <div class="row-wrap"> + <div class="col"> + <p>Slave instance size:</p> </div> + <div class="col"><span>{{ resource[DICTIONARY[PROVIDER][resource.image].slave_node_shape] }}</span></div> + </div> <ng-template [ngIf]="resource?.enabledGPU"> <div class="row-wrap"> <div class="col"> @@ -152,42 +151,53 @@ </p> </div> </div> - <div class="checkbox-group" *ngIf="resource.image === 'docker.datalab-dataengine' - && resource.status === 'running' - && environment.image !== 'docker.datalab-zeppelin' - && environment.image !== 'docker.datalab-superset' - && environment.image !== 'docker.datalab-jupyterlab'"> - <label> - <input #configurationNode type="checkbox" (change)="selectConfiguration()"/> Cluster configurations - </label> - <div class="checkbox-group"> - <form [formGroup]="configurationForm" novalidate> - <div class="config-details" - [ngClass]="{ show: configuration?.nativeElement['checked'] || false }"> - <textarea formControlName="configuration_parameters" placeholder="Cluster configuration template, JSON" - data-gramm_editor="false"></textarea> - <span class="danger_color" - *ngIf="!configurationForm.controls.configuration_parameters.valid && configurationForm.controls['configuration_parameters'].dirty">Configuration - parameters is not in a valid format</span> - </div> - </form> - </div> + <div class="checkbox-group" + *ngIf="resource.image === 'docker.datalab-dataengine' + && resource.status === 'running' + && environment.image !== 'docker.datalab-zeppelin' + && environment.image !== 'docker.datalab-superset' + && environment.image !== 'docker.datalab-jupyterlab'" + > + <label> + <input #configurationNode type="checkbox" (change)="selectConfiguration()"/> Cluster configurations + </label> + <div class="checkbox-group"> + <form [formGroup]="configurationForm" novalidate> + <div class="config-details" + [ngClass]="{ show: configuration?.nativeElement['checked'] || false }"> + <textarea + formControlName="configuration_parameters" + placeholder="Cluster configuration template, JSON" + data-gramm_editor="false"> + </textarea> + <span class="danger_color" + *ngIf="!configurationForm.controls.configuration_parameters.valid + && configurationForm.controls['configuration_parameters'].dirty"> + Configuration parameters is not in a valid format + </span> + </div> + </form> + </div> </div> <div *ngIf="environment.image === 'docker.datalab-zeppelin' && resource.status === 'running'"> - <small>Spark default configuration for Apache Zeppelin can not be changed from DataLab UI. Currently it - can be - done directly through Apache Zeppelin interpreter menu. - For more details please refer for Apache Zeppelin <a - href="https://zeppelin.apache.org/docs/0.9.0/usage/interpreter/overview.html" target="_blank">official - documentation</a>. - </small> + <small>Spark default configuration for Apache Zeppelin can not be changed from DataLab UI. + Currently it can be done directly through Apache Zeppelin interpreter menu. + For more details please refer for Apache Zeppelin + <a href="https://zeppelin.apache.org/docs/0.9.0/usage/interpreter/overview.html" target="_blank">official + documentation</a>. + </small> </div> <div class="text-center m-top-30" *ngIf="configuration?.nativeElement['checked'] || false"> - <button mat-raised-button type="button" (click)="dialogRef.close()" class="butt action">Cancel</button> - <button mat-raised-button type="submit" [disabled]="!configurationForm.valid" - class="butt butt-success action" - [ngClass]="{'not-allowed': !configurationForm.valid}" - (click)="editClusterConfiguration(configurationForm.value)">Update</button> + <button mat-raised-button type="button" + (click)="dialogRef.close()" + class="butt action">Cancel + </button> + <button mat-raised-button type="submit" + [disabled]="!configurationForm.valid" + class="butt butt-success action" + [ngClass]="{'not-allowed': !configurationForm.valid}" + (click)="editClusterConfiguration(configurationForm.value)">Update + </button> </div> </div> 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 510a336..aa8d00b 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 @@ -26,73 +26,71 @@ <div class="content-box mat-reset"> <form [formGroup]="resourceForm" *ngIf="clusterTypes.length && resourceForm; else placeholder"> - <div class="form-wrapper" [ngClass]="{ }"> - <div class="col"> - <div class="control-group" *ngIf="PROVIDER !== 'azure'" [hidden]="clusterTypes.length === 1"> - <label class="label">Select cluster type</label> - <div class="control selector-wrapper"> - <mat-form-field> - <!-- <mat-label>Select cluster type</mat-label>--> - <mat-select formControlName="template_name" - disableOptionCentering - panelClass="scrolling" - placeholder="Select cluster type"> - <mat-option *ngFor="let type of clusterTypes" [value]="type.template_name" - (click)="selectImage(type)">{{ type.template_name }} - </mat-option> - <mat-option *ngIf="!clusterTypes.length" class="multiple-select ml-10" disabled>Clusters types list - is empty</mat-option> - </mat-select> - <button class="caret"> - <i class="material-icons">keyboard_arrow_down</i> - </button> - </mat-form-field> + <div class="form-wrapper"> + <div class="col"> + <div class="control-group" *ngIf="PROVIDER !== 'azure'" [hidden]="clusterTypes.length === 1"> + <label class="label">Select cluster type</label> + <div class="control selector-wrapper"> + <mat-form-field> + <mat-select formControlName="template_name" + disableOptionCentering + panelClass="scrolling" + placeholder="Select cluster type"> + <mat-option *ngFor="let type of clusterTypes" [value]="type.template_name" + (click)="selectImage(type)">{{ type.template_name }} + </mat-option> + <mat-option *ngIf="!clusterTypes.length" class="multiple-select ml-10" disabled>Clusters types list + is empty</mat-option> + </mat-select> + <button class="caret"> + <i class="material-icons">keyboard_arrow_down</i> + </button> + </mat-form-field> + </div> </div> - </div> - - - <div class="control-group alias-name" *ngIf="selectedImage?.image"> - <label class="label">Cluster alias</label> - <div class="control"> - <input - [class.danger_field]="!resourceForm?.controls['cluster_alias_name'].valid - && resourceForm?.controls['cluster_alias_name'].dirty && resourceForm?.controls['cluster_alias_name'].hasError('duplication')" - type="text" class="form-control" placeholder="Enter cluster alias" - formControlName="cluster_alias_name" /> - <span class="error" *ngIf="resourceForm?.controls['cluster_alias_name'].hasError('user-duplication')">You have cluster with this name in current project.</span> - <span class="error" *ngIf="resourceForm?.controls['cluster_alias_name'].hasError('other-user-duplication')">Other user has cluster with this name in current project.</span> - <span class="error" *ngIf="resourceForm?.controls['cluster_alias_name'].hasError('maxlength') && - !resourceForm?.controls['cluster_alias_name'].hasError('pattern')" - > - Cluster name cannot be longer than {{maxClusterNameLength}} characters. - </span> - <span class="error" *ngIf="resourceForm?.controls['cluster_alias_name'].hasError('pattern')"> - Cluster name can only contain letters, numbers, hyphens and '_' but can not end with special - characters. - </span> + <div class="control-group alias-name" *ngIf="selectedImage?.image"> + <label class="label">Cluster alias</label> + <div class="control"> + <input + [class.danger_field]="!resourceForm?.controls['cluster_alias_name'].valid + && resourceForm?.controls['cluster_alias_name'].dirty + && resourceForm?.controls['cluster_alias_name'].hasError('duplication')" + type="text" class="form-control" placeholder="Enter cluster alias" + formControlName="cluster_alias_name" /> + <span class="error" *ngIf="resourceForm?.controls['cluster_alias_name'].hasError('user-duplication')">You have cluster with this name in current project.</span> + <span class="error" *ngIf="resourceForm?.controls['cluster_alias_name'].hasError('other-user-duplication')">Other user has cluster with this name in current project.</span> + <span class="error" *ngIf="resourceForm?.controls['cluster_alias_name'].hasError('maxlength') && + !resourceForm?.controls['cluster_alias_name'].hasError('pattern')" + > + Cluster name cannot be longer than {{maxClusterNameLength}} characters. + </span> + <span class="error" *ngIf="resourceForm?.controls['cluster_alias_name'].hasError('pattern')"> + Cluster name can only contain letters, numbers, hyphens and '_' but can not end with special + characters. + </span> + </div> </div> - </div> - <div class="control-group" *ngIf="selectedImage?.image"> - <label class="label">Master instance size</label> - <div class="control selector-wrapper"> - <mat-form-field> - <mat-label>Select instance size</mat-label> - <mat-select panelClass="scrolling" formControlName="shape_master" disableOptionCentering> - <mat-optgroup *ngFor="let item of (selectedImage.computation_resources_shapes | keys)" - [label]="item.key | underscoreless"> - <mat-option *ngFor="let list_item of item.value" [value]="list_item.Type" (click)="clearGpuType('master')"> - <strong class="highlight icon-label">{{ list_item.Size }}</strong> {{ list_item.Type }} - </mat-option> - </mat-optgroup> - </mat-select> - <button class="caret"> - <i class="material-icons">keyboard_arrow_down</i> - </button> - </mat-form-field> + <div class="control-group" *ngIf="selectedImage?.image"> + <label class="label">Master instance size</label> + <div class="control selector-wrapper"> + <mat-form-field> + <mat-label>Select instance size</mat-label> + <mat-select panelClass="scrolling" formControlName="shape_master" disableOptionCentering> + <mat-optgroup *ngFor="let item of (selectedImage.computation_resources_shapes | keys)" + [label]="item.key | underscoreless"> + <mat-option *ngFor="let list_item of item.value" [value]="list_item.Type" (click)="clearGpuType('master')"> + <strong class="highlight icon-label">{{ list_item.Size }}</strong> {{ list_item.Type }} + </mat-option> + </mat-optgroup> + </mat-select> + <button class="caret"> + <i class="material-icons">keyboard_arrow_down</i> + </button> + </mat-form-field> + </div> </div> - </div> </div> <div class="col"> @@ -126,27 +124,26 @@ </div> </div> - <div class="control-group" *ngIf="selectedImage?.image" - > - <label class="label">Slave instance size</label> - <div class="control selector-wrapper"> - <mat-form-field> - <mat-label>Select instance size</mat-label> - <mat-select panelClass="scrolling" formControlName="shape_slave" disableOptionCentering> - <mat-optgroup *ngFor="let item of (selectedImage.computation_resources_shapes | keys)" - [label]="item.key | underscoreless"> - <mat-option *ngFor="let list_item of item.value" [value]="list_item.Type" (click)="clearGpuType('slave')"> - <strong class="highlight icon-label">{{ list_item.Size }}</strong> {{ - list_item.Type }} - </mat-option> - </mat-optgroup> - </mat-select> - <button class="caret"> - <i class="material-icons">keyboard_arrow_down</i> - </button> - </mat-form-field> + <div class="control-group" *ngIf="selectedImage?.image"> + <label class="label">Slave instance size</label> + <div class="control selector-wrapper"> + <mat-form-field> + <mat-label>Select instance size</mat-label> + <mat-select panelClass="scrolling" formControlName="shape_slave" disableOptionCentering> + <mat-optgroup *ngFor="let item of (selectedImage.computation_resources_shapes | keys)" + [label]="item.key | underscoreless"> + <mat-option *ngFor="let list_item of item.value" [value]="list_item.Type" (click)="clearGpuType('slave')"> + <strong class="highlight icon-label">{{ list_item.Size }}</strong> {{ + list_item.Type }} + </mat-option> + </mat-optgroup> + </mat-select> + <button class="caret"> + <i class="material-icons">keyboard_arrow_down</i> + </button> + </mat-form-field> + </div> </div> - </div> </div> </div> @@ -266,24 +263,23 @@ </mat-form-field> </div> </div> - </div> </div> </div> - <div class="preemptible checkbox-group control-group" - *ngIf="PROVIDER === 'gcp' && selectedImage?.image === 'docker.datalab-dataengine-service'"> - <div class="d-flex cursor-pointer label" (click)="addAdditionalParams('preemptible')"> - <div class="empty-checkbox ml-10" [ngClass]="{'checked': isSelected.preemptible}" (click)="selectPreemptibleNodes(isSelected.preemptible)"> - <span class="checked-checkbox" *ngIf="isSelected.preemptible"></span> - </div> - <span class="pl-5">Preemptible node</span> + <div class="preemptible checkbox-group control-group" + *ngIf="PROVIDER === 'gcp' && selectedImage?.image === 'docker.datalab-dataengine-service'"> + <div class="d-flex cursor-pointer label" (click)="addAdditionalParams('preemptible')"> + <div class="empty-checkbox ml-10" [ngClass]="{'checked': isSelected.preemptible}" (click)="selectPreemptibleNodes(isSelected.preemptible)"> + <span class="checked-checkbox" *ngIf="isSelected.preemptible"></span> </div> - <div *ngIf="isSelected.preemptible" class="preemptible-details control" - [ngClass]="{ show: isSelected.preemptible}"> - <input type="text" class="form-control" formControlName="preemptible_instance_number" - (keypress)="CheckUtils.isNumberKey($event)" - (keydown.arrowup)="preemptibleCounter($event, 'increment')" - (keydown.arrowdown)="preemptibleCounter($event, 'decrement')"/> + <span class="pl-5">Preemptible node</span> + </div> + <div *ngIf="isSelected.preemptible" class="preemptible-details control" + [ngClass]="{ show: isSelected.preemptible}"> + <input type="text" class="form-control" formControlName="preemptible_instance_number" + (keypress)="CheckUtils.isNumberKey($event)" + (keydown.arrowup)="preemptibleCounter($event, 'increment')" + (keydown.arrowdown)="preemptibleCounter($event, 'decrement')"/> <span class="error error-bottom" *ngIf="!resourceForm?.controls.preemptible_instance_number.valid"> <span *ngIf="minPreemptibleInstanceNumber !== maxPreemptibleInstanceNumber; else equal"> Only integer values greater than or equal to {{ minPreemptibleInstanceNumber }} and less than @@ -292,8 +288,7 @@ <ng-template #equal>Please manage total machines count.</ng-template> </span> </div> - </div> - + </div> <div class="checkbox-group control-group m-top-15" *ngIf="PROVIDER === 'aws'" [hidden]="!selectedImage.templates.length"> <div class="d-flex cursor-pointer label" (click)="addAdditionalParams('spotInstances')"> @@ -314,55 +309,68 @@ rises above your bid price, the Spot instance is reclaimed by AWS so that it can be given to another customer. Make sure to backup your data on periodic basis.</span> </div> - <div class="checkbox-group control-group" - [hidden]="PROVIDER === 'gcp' && selectedImage?.image === 'docker.datalab-dataengine-service'" - *ngIf="notebook_instance?.image !== 'docker.datalab-zeppelin'"> - <div class="d-flex cursor-pointer label" (click)="addAdditionalParams('configuration')"> - <div class="empty-checkbox ml-10" [ngClass]="{'checked': isSelected.configuration}"> - <span class="checked-checkbox" *ngIf="isSelected.configuration"></span> - </div> - <span class="pl-5">Cluster configurations</span> - </div> - <div class="config-link" *ngIf="(isSelected.configuration) - && selectedImage?.image === 'docker.datalab-dataengine-service' - && PROVIDER === 'aws'"> - To view example JSON of configurations refer for <a - href="https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-configure-apps.html" - target="_blank">AWS - official documentation</a> - </div> + <div class="checkbox-group control-group" + [hidden]="PROVIDER === 'gcp' && selectedImage?.image === 'docker.datalab-dataengine-service'" + *ngIf="notebook_instance?.image !== 'docker.datalab-zeppelin'"> + <div class="d-flex cursor-pointer label" (click)="addAdditionalParams('configuration')"> + <div class="empty-checkbox ml-10" [ngClass]="{'checked': isSelected.configuration}"> + <span class="checked-checkbox" *ngIf="isSelected.configuration"></span> + </div> + <span class="pl-5">Cluster configurations</span> </div> - <div class="checkbox-group ml-10"> - <div class="config-details" [ngClass]="{ show: isSelected.configuration }"> - <textarea formControlName="configuration_parameters" placeholder="Cluster configuration template, JSON" - data-gramm_editor="false"></textarea> - <span class="error" - *ngIf="!resourceForm?.controls.configuration_parameters.valid && resourceForm?.controls['configuration_parameters'].dirty">Configuration - parameters is not in a valid format.</span> - </div> + <div class="config-link" + *ngIf="(isSelected.configuration) + && selectedImage?.image === 'docker.datalab-dataengine-service' + && PROVIDER === 'aws'" + > + To view example JSON of configurations refer for <a + href="https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-configure-apps.html" + target="_blank">AWS + official documentation</a> </div> - <div *ngIf="notebook_instance?.image === 'docker.datalab-zeppelin'" class="ml-10"> - <small>Spark default configuration for Apache Zeppelin can not be changed from DataLab UI. Currently it - can be - done directly through Apache Zeppelin interpreter menu. - For more details please refer for Apache Zeppelin <a - href="https://zeppelin.apache.org/docs/0.9.0/usage/interpreter/overview.html" target="_blank">official - documentation</a>. - </small> + </div> + <div class="checkbox-group ml-10"> + <div class="config-details" [ngClass]="{ show: isSelected.configuration }"> + <textarea formControlName="configuration_parameters" + placeholder="Cluster configuration template, JSON" + data-gramm_editor="false"> + </textarea> + <span class="error" + *ngIf="!resourceForm?.controls.configuration_parameters.valid + && resourceForm?.controls['configuration_parameters'].dirty"> + Configuration parameters is not in a valid format. + </span> </div> - <div class="text-center m-top-30"> - <button mat-raised-button type="button" (click)="dialogRef.close()" class="butt action">Cancel</button> - <button mat-raised-button type="button" [disabled]="!resourceForm?.valid || - (!resourceForm.value.shape_slave) || - (selectedImage?.image === 'docker.datalab-dataengine-service' && !resourceForm.value.version)" - (click)="createComputationalResource(resourceForm.value)" class="butt butt-success action" - [ngClass]="{'not-allowed': !resourceForm?.valid || - (selectedImage?.image === 'docker.datalab-dataengine-service' && !resourceForm.value.shape_slave) || - (selectedImage?.image === 'docker.datalab-dataengine-service' && !resourceForm.value.version) }">Create - </button> + </div> + <div *ngIf="notebook_instance?.image === 'docker.datalab-zeppelin'" class="ml-10"> + <small>Spark default configuration for Apache Zeppelin can not be changed from DataLab UI. Currently it + can be + done directly through Apache Zeppelin interpreter menu. + For more details please refer for Apache Zeppelin <a + href="https://zeppelin.apache.org/docs/0.9.0/usage/interpreter/overview.html" target="_blank">official + documentation</a>. + </small> + </div> + <div class="text-center m-top-30"> + <button mat-raised-button + type="button" + (click)="dialogRef.close()" + class="butt action">Cancel + </button> + <button mat-raised-button + type="button" + [disabled]="!resourceForm?.valid + || (!resourceForm.value.shape_slave) + || (selectedImage?.image === 'docker.datalab-dataengine-service' && !resourceForm.value.version)" + (click)="createComputationalResource(resourceForm.value)" + class="butt butt-success action" + [ngClass]="{'not-allowed': !resourceForm?.valid + || (selectedImage?.image === 'docker.datalab-dataengine-service' && !resourceForm.value.shape_slave) + || (selectedImage?.image === 'docker.datalab-dataengine-service' && !resourceForm.value.version) }"> + Create + </button> </div> </form> - </div> <ng-template #placeholder> <div *ngIf="!loading && !clusterTypes?.length" class="info message"> 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 70b24e2..76852a9 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 @@ -88,7 +88,6 @@ export class ComputationalResourceCreateDialogComponent implements OnInit { public selectImage($event) { this.selectedImage = $event; - this.selectedImage.computationGPU = ['tesla1', 'tesla2', 'tesla3']; this.filterShapes(); this.getComputationalResourceLimits(); @@ -267,7 +266,6 @@ export class ComputationalResourceCreateDialogComponent implements OnInit { this.clusterTypes.forEach((cluster, index) => this.clusterTypes[index].computation_resources_shapes = SortUtils.shapesSort(cluster.computation_resources_shapes)); this.selectedImage = this.clusterTypes[0]; - this.selectedImage.computationGPU = ['tesla1', 'tesla2', 'tesla3']; if (this.selectedImage) { this._ref.detectChanges(); this.filterShapes(); diff --git a/services/self-service/src/main/resources/webapp/src/dictionary/gcp.dictionary.ts b/services/self-service/src/main/resources/webapp/src/dictionary/gcp.dictionary.ts index 179fc45..9cf117b 100644 --- a/services/self-service/src/main/resources/webapp/src/dictionary/gcp.dictionary.ts +++ b/services/self-service/src/main/resources/webapp/src/dictionary/gcp.dictionary.ts @@ -72,7 +72,8 @@ export const NAMING_CONVENTION_GCP = { 'total_instance_number_max': 'max_spark_instance_count', 'data_engine_master_instance_size': 'Machine type', 'master_instance_number': 'Master machine number', - 'master_node_shape': 'dataengine_instance_shape', + 'master_node_shape': 'master_node_shape', + 'slave_node_shape': 'slave_node_shape', 'total_instance_number': 'dataengine_instance_count', }, }; --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
