You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@dlab.apache.org by of...@apache.org on 2019/12/04 11:51:03 UTC
[incubator-dlab] branch develop updated: [DLAB-1271] Added PROJECT
column to billing export
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 fcd4915 [DLAB-1271] Added PROJECT column to billing export
fcd4915 is described below
commit fcd4915201f0214ff57dc337c8a6e3f9aa1f0a89
Author: Oleh Fuks <ol...@gmail.com>
AuthorDate: Wed Dec 4 13:50:42 2019 +0200
[DLAB-1271] Added PROJECT column to billing export
---
.../java/com/epam/dlab/model/aws/ReportLine.java | 1 +
.../backendapi/service/aws/AwsBillingService.java | 2 ++
.../service/azure/AzureBillingService.java | 3 +++
.../backendapi/service/gcp/GcpBillingService.java | 2 ++
.../service/aws/AwsBillingServiceTest.java | 16 ++++++++--------
.../service/azure/AzureBillingServiceTest.java | 20 ++++++++++----------
6 files changed, 26 insertions(+), 18 deletions(-)
diff --git a/services/dlab-model/src/main/java/com/epam/dlab/model/aws/ReportLine.java b/services/dlab-model/src/main/java/com/epam/dlab/model/aws/ReportLine.java
index f80544d..46c82f0 100644
--- a/services/dlab-model/src/main/java/com/epam/dlab/model/aws/ReportLine.java
+++ b/services/dlab-model/src/main/java/com/epam/dlab/model/aws/ReportLine.java
@@ -33,6 +33,7 @@ import java.util.regex.Pattern;
public class ReportLine {
public static final String FIELD_DLAB_ID = "dlab_id";
public static final String FIELD_USER_ID = "user";
+ public static final String FIELD_PROJECT = "project";
public static final String FIELD_USAGE_DATE = "usage_date";
public static final String FIELD_PRODUCT = "product";
public static final String FIELD_USAGE_TYPE = "usage_type";
diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/service/aws/AwsBillingService.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/service/aws/AwsBillingService.java
index aa102cb..14a57a9 100644
--- a/services/self-service/src/main/java/com/epam/dlab/backendapi/service/aws/AwsBillingService.java
+++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/service/aws/AwsBillingService.java
@@ -64,6 +64,7 @@ public class AwsBillingService extends BillingService<AwsBillingFilter> {
headers.add("USER");
}
+ headers.add("PROJECT");
headers.add("ENVIRONMENT NAME");
headers.add("RESOURCE TYPE");
headers.add("SHAPE");
@@ -80,6 +81,7 @@ public class AwsBillingService extends BillingService<AwsBillingFilter> {
items.add(getValueOrEmpty(document, ReportLine.FIELD_USER_ID));
}
+ items.add(getValueOrEmpty(document, ReportLine.FIELD_PROJECT));
items.add(getValueOrEmpty(document, ReportLine.FIELD_DLAB_ID));
items.add(getValueOrEmpty(document, AwsBillingDAO.DLAB_RESOURCE_TYPE));
items.add(getValueOrEmpty(document, AwsBillingDAO.SHAPE).replace(System.lineSeparator(), " "));
diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/service/azure/AzureBillingService.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/service/azure/AzureBillingService.java
index 672aa7d..5b329be 100644
--- a/services/self-service/src/main/java/com/epam/dlab/backendapi/service/azure/AzureBillingService.java
+++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/service/azure/AzureBillingService.java
@@ -27,6 +27,7 @@ import com.epam.dlab.backendapi.dao.azure.AzureBillingDAO;
import com.epam.dlab.backendapi.resources.dto.azure.AzureBillingFilter;
import com.epam.dlab.backendapi.service.BillingService;
import com.epam.dlab.backendapi.util.CSVFormatter;
+import com.epam.dlab.model.aws.ReportLine;
import com.google.inject.Inject;
import com.google.inject.Singleton;
import lombok.extern.slf4j.Slf4j;
@@ -68,6 +69,7 @@ public class AzureBillingService extends BillingService<AzureBillingFilter> {
headers.add("USER");
}
+ headers.add("PROJECT");
headers.add("ENVIRONMENT NAME");
headers.add("RESOURCE TYPE");
headers.add("INSTANCE SIZE");
@@ -85,6 +87,7 @@ public class AzureBillingService extends BillingService<AzureBillingFilter> {
items.add(getValueOrEmpty(document, MongoKeyWords.DLAB_USER));
}
+ items.add(getValueOrEmpty(document, ReportLine.FIELD_PROJECT));
items.add(getValueOrEmpty(document, MongoKeyWords.DLAB_ID));
items.add(getValueOrEmpty(document, MongoKeyWords.RESOURCE_TYPE));
items.add(getValueOrEmpty(document, AzureBillingDAO.SIZE).replace(System.lineSeparator(), " "));
diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/service/gcp/GcpBillingService.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/service/gcp/GcpBillingService.java
index 6851f33..4b89e4b 100644
--- a/services/self-service/src/main/java/com/epam/dlab/backendapi/service/gcp/GcpBillingService.java
+++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/service/gcp/GcpBillingService.java
@@ -52,6 +52,7 @@ public class GcpBillingService extends BillingService<GcpBillingFilter> {
headers.add("USER");
}
+ headers.add("PROJECT");
headers.add("ENVIRONMENT NAME");
headers.add("RESOURCE TYPE");
headers.add("SHAPE");
@@ -69,6 +70,7 @@ public class GcpBillingService extends BillingService<GcpBillingFilter> {
items.add(getValueOrEmpty(document, ReportLine.FIELD_USER_ID));
}
+ items.add(getValueOrEmpty(document, ReportLine.FIELD_PROJECT));
items.add(getValueOrEmpty(document, ReportLine.FIELD_DLAB_ID));
items.add(getValueOrEmpty(document, AwsBillingDAO.DLAB_RESOURCE_TYPE));
items.add(getValueOrEmpty(document, AwsBillingDAO.SHAPE).replace(System.lineSeparator(), " "));
diff --git a/services/self-service/src/test/java/com/epam/dlab/backendapi/service/aws/AwsBillingServiceTest.java b/services/self-service/src/test/java/com/epam/dlab/backendapi/service/aws/AwsBillingServiceTest.java
index e24e009..d7d00b5 100644
--- a/services/self-service/src/test/java/com/epam/dlab/backendapi/service/aws/AwsBillingServiceTest.java
+++ b/services/self-service/src/test/java/com/epam/dlab/backendapi/service/aws/AwsBillingServiceTest.java
@@ -167,7 +167,7 @@ public class AwsBillingServiceTest {
@Test
public void getHeadersList() {
List<String> expectedResult1 =
- Arrays.asList("USER", "ENVIRONMENT NAME", "RESOURCE TYPE", "SHAPE", "SERVICE", "SERVICE CHARGES");
+ Arrays.asList("USER", "PROJECT", "ENVIRONMENT NAME", "RESOURCE TYPE", "SHAPE", "SERVICE", "SERVICE CHARGES");
List<String> expectedResult2 = expectedResult1.subList(1, expectedResult1.size());
List<String> actualResult1 = awsBillingService.getHeadersList(true);
@@ -179,23 +179,23 @@ public class AwsBillingServiceTest {
@Test
public void getLine() {
- String expectedResult1 = "someUser,someId,someResType,someShape,someProduct,someCost someCode\n";
+ String expectedResult1 = "someUser,someProject,someId,someResType,someShape,someProduct,someCost someCode\n";
String actualResult1 = awsBillingService.getLine(true, basicDocument);
assertEquals(expectedResult1, actualResult1);
basicDocument.remove("user");
- String expectedResult2 = "someId,someResType,someShape,someProduct,someCost someCode\n";
+ String expectedResult2 = "someProject,someId,someResType,someShape,someProduct,someCost someCode\n";
String actualResult2 = awsBillingService.getLine(false, basicDocument);
assertEquals(expectedResult2, actualResult2);
}
@Test
public void getTotal() {
- String expectedResult1 = ",,,,,Total: someCostTotal someCode\n";
+ String expectedResult1 = ",,,,,,Total: someCostTotal someCode\n";
String actualResult1 = awsBillingService.getTotal(true, basicDocument);
assertEquals(expectedResult1, actualResult1);
- String expectedResult2 = ",,,,Total: someCostTotal someCode\n";
+ String expectedResult2 = ",,,,,Total: someCostTotal someCode\n";
String actualResult2 = awsBillingService.getTotal(false, basicDocument);
assertEquals(expectedResult2, actualResult2);
}
@@ -206,9 +206,9 @@ public class AwsBillingServiceTest {
private Document getBasicDocument() {
return new Document().append("service_base_name", "someSBN").append("user", "someUser")
- .append("dlab_id", "someId").append("dlab_resource_type", "someResType")
- .append("tag_resource_id", "someTagResourceId").append("from", "2018-03-21")
- .append("to", "2018-03-22").append("full_report", false)
+ .append("project", "someProject").append("dlab_id", "someId")
+ .append("dlab_resource_type", "someResType").append("tag_resource_id", "someTagResourceId")
+ .append("from", "2018-03-21").append("to", "2018-03-22").append("full_report", false)
.append("shape", "someShape").append("product", "someProduct").append("cost", "someCost")
.append("cost_total", "someCostTotal").append("currency_code", "someCode")
.append("lines", Collections.singletonList(new Document()));
diff --git a/services/self-service/src/test/java/com/epam/dlab/backendapi/service/azure/AzureBillingServiceTest.java b/services/self-service/src/test/java/com/epam/dlab/backendapi/service/azure/AzureBillingServiceTest.java
index 1fafa87..cc96d0a 100644
--- a/services/self-service/src/test/java/com/epam/dlab/backendapi/service/azure/AzureBillingServiceTest.java
+++ b/services/self-service/src/test/java/com/epam/dlab/backendapi/service/azure/AzureBillingServiceTest.java
@@ -152,7 +152,7 @@ public class AzureBillingServiceTest {
@Test
public void getHeadersList() {
List<String> expectedResult1 =
- Arrays.asList("USER", "ENVIRONMENT NAME", "RESOURCE TYPE", "INSTANCE SIZE", "CATEGORY", "SERVICE " +
+ Arrays.asList("USER", "PROJECT" ,"ENVIRONMENT NAME", "RESOURCE TYPE", "INSTANCE SIZE", "CATEGORY", "SERVICE " +
"CHARGES");
List<String> expectedResult2 = expectedResult1.subList(1, expectedResult1.size());
@@ -165,23 +165,23 @@ public class AzureBillingServiceTest {
@Test
public void getLine() {
- String expectedResult1 = "someUser,someId,someResType,someSize,someMeterCategory,someCost someCode\n";
+ String expectedResult1 = "someUser,someProject,someId,someResType,someSize,someMeterCategory,someCost someCode\n";
String actualResult1 = azureBillingService.getLine(true, basicDocument);
assertEquals(expectedResult1, actualResult1);
basicDocument.remove("user");
- String expectedResult2 = "someId,someResType,someSize,someMeterCategory,someCost someCode\n";
+ String expectedResult2 = "someProject,someId,someResType,someSize,someMeterCategory,someCost someCode\n";
String actualResult2 = azureBillingService.getLine(false, basicDocument);
assertEquals(expectedResult2, actualResult2);
}
@Test
public void getTotal() {
- String expectedResult1 = ",,,,,Total: someCost someCode\n";
+ String expectedResult1 = ",,,,,,Total: someCost someCode\n";
String actualResult1 = azureBillingService.getTotal(true, basicDocument);
assertEquals(expectedResult1, actualResult1);
- String expectedResult2 = ",,,,Total: someCost someCode\n";
+ String expectedResult2 = ",,,,,Total: someCost someCode\n";
String actualResult2 = azureBillingService.getTotal(false, basicDocument);
assertEquals(expectedResult2, actualResult2);
}
@@ -192,11 +192,11 @@ public class AzureBillingServiceTest {
private Document getBasicDocument() {
return new Document().append("service_base_name", "someSBN").append("user", "someUser")
- .append("dlabId", "someId").append("resourceType", "someResType")
- .append("from", "2018-03-21").append("size", "someSize")
- .append("to", "2018-03-22").append("full_report", false)
- .append("meterCategory", "someMeterCategory").append("costString", "someCost")
- .append("currencyCode", "someCode").append("lines", Collections.singletonList(new Document()));
+ .append("project", "someProject").append("dlabId", "someId").append("resourceType", "someResType")
+ .append("from", "2018-03-21").append("size", "someSize").append("to", "2018-03-22")
+ .append("full_report", false).append("meterCategory", "someMeterCategory")
+ .append("costString", "someCost").append("currencyCode", "someCode")
+ .append("lines", Collections.singletonList(new Document()));
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@dlab.apache.org
For additional commands, e-mail: commits-help@dlab.apache.org