summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOla Aunrønning <olaa@verizonmedia.com>2020-10-23 15:56:23 +0200
committerOla Aunrønning <olaa@verizonmedia.com>2020-10-23 15:56:23 +0200
commit85609870b4efb0029c202ef2730547f8c3faa32f (patch)
tree6168f9843f9ba4ff17369d0cbdd3c9c4efb9a319
parent5ceb3deefdafd77ce2dba976a5124faa8b7f75f1 (diff)
Add lastUpdated field to report. Report ID uses camel case. Remove unnecessary JsonIgnore. Reverse String comparison
-rw-r--r--controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/repair/RepairTicketReport.java13
-rw-r--r--controller-server/src/main/java/com/yahoo/vespa/hosted/controller/maintenance/HostRepairMaintainer.java2
-rw-r--r--controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/HostRepairMaintainerTest.java6
3 files changed, 15 insertions, 6 deletions
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/repair/RepairTicketReport.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/repair/RepairTicketReport.java
index c44e00706e2..c2425fe0f72 100644
--- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/repair/RepairTicketReport.java
+++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/repair/RepairTicketReport.java
@@ -15,19 +15,22 @@ import static com.yahoo.yolean.Exceptions.uncheck;
@JsonIgnoreProperties(ignoreUnknown = true)
public class RepairTicketReport {
- private static final String REPORT_ID = "repair-ticket";
- private static final ObjectMapper objectMapper = new ObjectMapper();@JsonIgnore
+ private static final String REPORT_ID = "repairTicket";
+ private static final ObjectMapper objectMapper = new ObjectMapper();
public String status;
public String ticketNumber;
public long createdMillis;
+ public long updatedMillis;
public RepairTicketReport(@JsonProperty("status") String status,
@JsonProperty("ticketNumber") String ticketNumber,
- @JsonProperty("createdMillis") long createdMillis) {
+ @JsonProperty("createdMillis") long createdMillis,
+ @JsonProperty("updatedMillis") long updatedMillis) {
this.status = status;
this.ticketNumber = ticketNumber;
this.createdMillis = createdMillis;
+ this.updatedMillis = updatedMillis;
}
public String getStatus() {
@@ -42,6 +45,10 @@ public class RepairTicketReport {
return createdMillis;
}
+ public long getUpdatedMillis() {
+ return updatedMillis;
+ }
+
public static String getReportId() {
return REPORT_ID;
}
diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/maintenance/HostRepairMaintainer.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/maintenance/HostRepairMaintainer.java
index c3c5f902dff..e3c6862384f 100644
--- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/maintenance/HostRepairMaintainer.java
+++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/maintenance/HostRepairMaintainer.java
@@ -72,7 +72,7 @@ public class HostRepairMaintainer extends ControllerMaintainer {
if (!reports.containsKey(RepairTicketReport.getReportId())) {
return false;
}
- return getTicketReport(node).getStatus().equals("OPEN");
+ return "OPEN".equals(getTicketReport(node).getStatus());
}
private RepairTicketReport getTicketReport(Node node) {
diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/HostRepairMaintainerTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/HostRepairMaintainerTest.java
index 24094892640..556755581fe 100644
--- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/HostRepairMaintainerTest.java
+++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/HostRepairMaintainerTest.java
@@ -10,6 +10,7 @@ import com.yahoo.vespa.hosted.controller.api.integration.repair.RepairTicketRepo
import org.junit.Test;
import java.time.Duration;
+import java.time.Instant;
import java.util.List;
import static org.junit.Assert.*;
@@ -27,8 +28,9 @@ public class HostRepairMaintainerTest {
var zoneId = ZoneId.from("dev.us-east-1");
var hostname1 = HostName.from("node-1-tenant-host-dev.us-east-1");
var hostname2 = HostName.from("node-2-tenant-host-dev.us-east-1");
- var openTicket = new RepairTicketReport("OPEN", "ticket-1", 123l);
- var closedTicket = new RepairTicketReport("CLOSED", "ticket-2", 123l);
+ var timestamp = Instant.now().toEpochMilli();
+ var openTicket = new RepairTicketReport("OPEN", "ticket-1", timestamp, timestamp);
+ var closedTicket = new RepairTicketReport("CLOSED", "ticket-2", timestamp, timestamp);
tester.configServer().nodeRepository().addReport(
zoneId,