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

ofuks pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/incubator-dlab.git


The following commit(s) were added to refs/heads/develop by this push:
     new 202e6f2  [DLAB-1734] Conveyed amount of nodes for computational 
resources
202e6f2 is described below

commit 202e6f2cf7e3d7cbaeafdc1d0f4deae35ccf5bf6
Author: Oleh Fuks <olegfuk...@gmail.com>
AuthorDate: Wed Jun 24 16:37:58 2020 +0300

    [DLAB-1734] Conveyed amount of nodes for computational resources
---
 .../dto/aws/computational/AwsComputationalResource.java |  5 ++---
 .../computational/SparkStandaloneClusterResource.java   |  5 ++---
 .../dto/computational/UserComputationalResource.java    |  4 +++-
 .../dto/gcp/computational/GcpComputationalResource.java |  4 ++--
 .../resources/aws/ComputationalResourceAws.java         | 17 +++++++++--------
 .../resources/gcp/ComputationalResourceGcp.java         |  9 +++++----
 .../com/epam/dlab/backendapi/util/BillingUtils.java     |  4 ++--
 7 files changed, 25 insertions(+), 23 deletions(-)

diff --git 
a/services/dlab-model/src/main/java/com/epam/dlab/dto/aws/computational/AwsComputationalResource.java
 
b/services/dlab-model/src/main/java/com/epam/dlab/dto/aws/computational/AwsComputationalResource.java
index 8a268c5..7b8f77b 100644
--- 
a/services/dlab-model/src/main/java/com/epam/dlab/dto/aws/computational/AwsComputationalResource.java
+++ 
b/services/dlab-model/src/main/java/com/epam/dlab/dto/aws/computational/AwsComputationalResource.java
@@ -63,10 +63,9 @@ public class AwsComputationalResource extends 
UserComputationalResource {
                                                                        String 
instanceId, String masterShape, String slaveShape, Boolean slaveSpot,
                                                                        Integer 
slaveSpotPctPrice, String slaveNumber, String version,
                                                                        
List<ResourceURL> resourceURL, LocalDateTime lastActivity,
-                                                                       
List<ClusterConfig> config, Map<String, String> tags) {
-
+                                                                       
List<ClusterConfig> config, Map<String, String> tags, String 
totalInstanceCount) {
                super(computationalName, computationalId, imageName, 
templateName, status, uptime, schedulerJobData,
-                               reuploadKeyRequired, resourceURL, lastActivity, 
tags);
+                               reuploadKeyRequired, resourceURL, lastActivity, 
tags, totalInstanceCount);
                this.instanceId = instanceId;
                this.masterShape = masterShape;
                this.slaveShape = slaveShape;
diff --git 
a/services/dlab-model/src/main/java/com/epam/dlab/dto/computational/SparkStandaloneClusterResource.java
 
b/services/dlab-model/src/main/java/com/epam/dlab/dto/computational/SparkStandaloneClusterResource.java
index 82f5660..80c6d5b 100644
--- 
a/services/dlab-model/src/main/java/com/epam/dlab/dto/computational/SparkStandaloneClusterResource.java
+++ 
b/services/dlab-model/src/main/java/com/epam/dlab/dto/computational/SparkStandaloneClusterResource.java
@@ -52,10 +52,9 @@ public class SparkStandaloneClusterResource extends 
UserComputationalResource {
                                                                                
  SchedulerJobDTO schedulerJobData, boolean reuploadKeyRequired,
                                                                                
  String dataEngineInstanceCount, String dataEngineInstanceShape,
                                                                                
  List<ResourceURL> resourceURL, LocalDateTime lastActivity,
-                                                                               
  List<ClusterConfig> config, Map<String, String> tags) {
-
+                                                                               
  List<ClusterConfig> config, Map<String, String> tags, String 
totalInstanceCount) {
                super(computationalName, computationalId, imageName, 
templateName, status, uptime, schedulerJobData,
-                               reuploadKeyRequired, resourceURL, lastActivity, 
tags);
+                               reuploadKeyRequired, resourceURL, lastActivity, 
tags, totalInstanceCount);
                this.dataEngineInstanceCount = dataEngineInstanceCount;
                this.dataEngineInstanceShape = dataEngineInstanceShape;
                this.config = config;
diff --git 
a/services/dlab-model/src/main/java/com/epam/dlab/dto/computational/UserComputationalResource.java
 
b/services/dlab-model/src/main/java/com/epam/dlab/dto/computational/UserComputationalResource.java
index 9f8c021..df0892c 100644
--- 
a/services/dlab-model/src/main/java/com/epam/dlab/dto/computational/UserComputationalResource.java
+++ 
b/services/dlab-model/src/main/java/com/epam/dlab/dto/computational/UserComputationalResource.java
@@ -67,13 +67,14 @@ public class UserComputationalResource {
        private int dataengineInstanceCount;
        @JsonProperty("instance_id")
        private String instanceId;
+       private String totalInstanceCount;
        protected List<ClusterConfig> config;
        private Map<String, String> tags;
 
        public UserComputationalResource(String computationalName, String 
computationalId, String imageName,
                                                                         String 
templateName, String status, Date uptime, SchedulerJobDTO schedulerData,
                                                                         
boolean reuploadKeyRequired, List<ResourceURL> resourceUrl,
-                                                                        
LocalDateTime lastActivity, Map<String, String> tags) {
+                                                                        
LocalDateTime lastActivity, Map<String, String> tags, String 
totalInstanceCount) {
                this.computationalName = computationalName;
                this.computationalId = computationalId;
                this.imageName = imageName;
@@ -85,6 +86,7 @@ public class UserComputationalResource {
                this.resourceUrl = resourceUrl;
                this.lastActivity = lastActivity;
                this.tags = tags;
+               this.totalInstanceCount = totalInstanceCount;
        }
 
        public DataEngineType getDataEngineType() {
diff --git 
a/services/dlab-model/src/main/java/com/epam/dlab/dto/gcp/computational/GcpComputationalResource.java
 
b/services/dlab-model/src/main/java/com/epam/dlab/dto/gcp/computational/GcpComputationalResource.java
index b56bbd8..5f0f103 100644
--- 
a/services/dlab-model/src/main/java/com/epam/dlab/dto/gcp/computational/GcpComputationalResource.java
+++ 
b/services/dlab-model/src/main/java/com/epam/dlab/dto/gcp/computational/GcpComputationalResource.java
@@ -63,9 +63,9 @@ public class GcpComputationalResource extends 
UserComputationalResource {
                                                                        String 
instanceId, String masterShape, String slaveShape, String slaveNumber,
                                                                        String 
masterNumber, String preemptibleNumber, String version,
                                                                        
List<ResourceURL> resourceURL, LocalDateTime lastActivity,
-                                                                       
Map<String, String> tags) {
+                                                                       
Map<String, String> tags, String totalInstanceCount) {
                super(computationalName, computationalId, imageName, 
templateName, status, uptime, schedulerJobData,
-                               reuploadKeyRequired, resourceURL, lastActivity, 
tags);
+                               reuploadKeyRequired, resourceURL, lastActivity, 
tags, totalInstanceCount);
                this.instanceId = instanceId;
                this.masterShape = masterShape;
                this.slaveShape = slaveShape;
diff --git 
a/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/aws/ComputationalResourceAws.java
 
b/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/aws/ComputationalResourceAws.java
index 9c82f04..be47eb7 100644
--- 
a/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/aws/ComputationalResourceAws.java
+++ 
b/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/aws/ComputationalResourceAws.java
@@ -97,14 +97,15 @@ public class ComputationalResourceAws implements 
ComputationalAPI {
                                        .computationalName(form.getName())
                                        .imageName(form.getImage())
                                        .templateName(form.getTemplateName())
-                    .status(CREATING.toString())
-                    .masterShape(form.getMasterInstanceType())
-                    .slaveShape(form.getSlaveInstanceType())
-                    .slaveSpot(form.getSlaveInstanceSpot())
-                    .slaveSpotPctPrice(form.getSlaveInstanceSpotPctPrice())
-                    .slaveNumber(form.getInstanceCount())
-                    .config(form.getConfig())
-                    .version(form.getVersion())
+                                       .status(CREATING.toString())
+                                       
.masterShape(form.getMasterInstanceType())
+                                       .slaveShape(form.getSlaveInstanceType())
+                                       .slaveSpot(form.getSlaveInstanceSpot())
+                                       
.slaveSpotPctPrice(form.getSlaveInstanceSpotPctPrice())
+                                       .slaveNumber(form.getInstanceCount())
+                                       .config(form.getConfig())
+                                       .version(form.getVersion())
+                                       
.totalInstanceCount(form.getInstanceCount())
                     .build();
             boolean resourceAdded = 
computationalService.createDataEngineService(userInfo, form.getName(), form, 
awsComputationalResource,
                     form.getProject(), getAuditInfo(form.getNotebookName()));
diff --git 
a/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/gcp/ComputationalResourceGcp.java
 
b/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/gcp/ComputationalResourceGcp.java
index c5a9b6b..8f9c832 100644
--- 
a/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/gcp/ComputationalResourceGcp.java
+++ 
b/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/gcp/ComputationalResourceGcp.java
@@ -95,10 +95,10 @@ public class ComputationalResourceGcp implements 
ComputationalAPI {
                log.debug("Create computational resources for {} | form is {}", 
userInfo.getName(), form);
 
                if (DataEngineType.CLOUD_SERVICE == 
DataEngineType.fromDockerImageName(form.getImage())) {
-                       validate(userInfo, form);
-                       GcpComputationalResource gcpComputationalResource = 
GcpComputationalResource.builder().computationalName
-                                       (form.getName())
-                                       .imageName(form.getImage())
+            validate(userInfo, form);
+            GcpComputationalResource gcpComputationalResource = 
GcpComputationalResource.builder()
+                    .computationalName(form.getName())
+                    .imageName(form.getImage())
                     .templateName(form.getTemplateName())
                     .status(CREATING.toString())
                     .masterShape(form.getMasterInstanceType())
@@ -107,6 +107,7 @@ public class ComputationalResourceGcp implements 
ComputationalAPI {
                     .masterNumber(form.getMasterInstanceCount())
                     .preemptibleNumber(form.getPreemptibleCount())
                     .version(form.getVersion())
+                    .totalInstanceCount(form.getMasterInstanceCount() + 
form.getSlaveInstanceCount())
                     .build();
             boolean resourceAdded = 
computationalService.createDataEngineService(userInfo, form.getName(), form, 
gcpComputationalResource,
                     form.getProject(), getAuditInfo(form.getNotebookName()));
diff --git 
a/services/self-service/src/main/java/com/epam/dlab/backendapi/util/BillingUtils.java
 
b/services/self-service/src/main/java/com/epam/dlab/backendapi/util/BillingUtils.java
index 72e5a77..bfe704b 100644
--- 
a/services/self-service/src/main/java/com/epam/dlab/backendapi/util/BillingUtils.java
+++ 
b/services/self-service/src/main/java/com/epam/dlab/backendapi/util/BillingUtils.java
@@ -70,7 +70,7 @@ public class BillingUtils {
     private static final String IMAGE_NAME = "Image";
 
     private static final String DATAENGINE_NAME_FORMAT = "%d x %s";
-    private static final String DATAENGINE_SERVICE_NAME_FORMAT = "Master: 
%sSlave: %s";
+    private static final String DATAENGINE_SERVICE_NAME_FORMAT = "Master: 
%sSlave: %s x %s";
 
     public static Stream<BillingReportLine> edgeBillingDataStream(String 
project, String sbn, String endpoint) {
         final String userEdgeId = String.format(EDGE_FORMAT, sbn, project, 
endpoint).toLowerCase();
@@ -160,7 +160,7 @@ public class BillingUtils {
     public static String getComputationalShape(UserComputationalResource 
resource) {
         return DataEngineType.fromDockerImageName(resource.getImageName()) == 
DataEngineType.SPARK_STANDALONE ?
                 String.format(DATAENGINE_NAME_FORMAT, 
resource.getDataengineInstanceCount(), resource.getDataengineShape()) :
-                String.format(DATAENGINE_SERVICE_NAME_FORMAT, 
resource.getMasterNodeShape(), resource.getSlaveNodeShape());
+                String.format(DATAENGINE_SERVICE_NAME_FORMAT, 
resource.getMasterNodeShape(), resource.getTotalInstanceCount(), 
resource.getSlaveNodeShape());
     }
 
     private static Stream<BillingReportLine> 
standardImageBillingDataStream(String sbn, String endpoint) {


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@dlab.apache.org
For additional commands, e-mail: commits-h...@dlab.apache.org

Reply via email to