Skip to content

Commit d0da86b

Browse files
authored
Merge pull request #74 from dwasinge/status
Status Model Updates
2 parents 184fb68 + a2a57e9 commit d0da86b

File tree

5 files changed

+118
-23
lines changed

5 files changed

+118
-23
lines changed
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
package com.redhat.labs.omp.models;
2+
3+
import lombok.AllArgsConstructor;
4+
import lombok.Builder;
5+
import lombok.Data;
6+
import lombok.NoArgsConstructor;
7+
8+
@Data
9+
@Builder
10+
@NoArgsConstructor
11+
@AllArgsConstructor
12+
public class Message {
13+
14+
private String severity;
15+
private String message;
16+
private String updated;
17+
18+
}

src/main/java/com/redhat/labs/omp/models/Status.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ public class Status {
1717

1818
@JsonbProperty("overall_status")
1919
private String status;
20-
private List<String> messages;
21-
private String openshiftWebConsole;
22-
private String openshiftApi;
20+
private List<Message> messages;
21+
private List<Subsystem> subsystems;
22+
2323
}
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
package com.redhat.labs.omp.models;
2+
3+
import java.util.List;
4+
5+
import lombok.AllArgsConstructor;
6+
import lombok.Builder;
7+
import lombok.Data;
8+
import lombok.NoArgsConstructor;
9+
10+
@Data
11+
@Builder
12+
@NoArgsConstructor
13+
@AllArgsConstructor
14+
public class Subsystem {
15+
16+
private String name;
17+
private String status;
18+
private String state;
19+
private String info;
20+
private String updated;
21+
private String webConsole;
22+
private String api;
23+
private List<Message> messages;
24+
25+
}

src/test/java/com/redhat/labs/omp/resource/EngagementResourceTest.java

Lines changed: 20 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -23,12 +23,15 @@ void testGetAllEngagementsSuccess() {
2323
.get("/api/v1/engagements")
2424
.then()
2525
.statusCode(200)
26-
.body(is("[{\"archive_date\":\"20210125\",\"commits\":[],\"customer_contact_email\":\"[email protected]\",\"customer_contact_name\":\"Reg Dunlop\","
27-
+ "\"customer_name\":\"customer1\",\"description\":\"Charleston\",\"end_date\":\"20201225\",\"engagement_lead_email\":\"[email protected]\","
28-
+ "\"engagement_lead_name\":\"Doug Gilmour\",\"location\":\"Raleigh, NC\",\"ocp_cloud_provider_name\":\"GCP\",\"ocp_cloud_provider_region\":\"West\","
29-
+ "\"ocp_cluster_size\":\"medium\",\"ocp_persistent_storage_size\":\"50GB\",\"ocp_sub_domain\":\"jello\",\"ocp_version\":\"v4.2\",\"project_id\":0,\"project_name\":\"project1\","
30-
+ "\"start_date\":\"20200202\",\"status\":{\"messages\":[\"This is message 1\",\"This is message 2\",\"This is message 3\"],\"openshift_api\":\"https://console.s11.core.rht-labs.com/\","
31-
+ "\"openshift_web_console\":\"https://console.s11.core.rht-labs.com/\",\"overall_status\":\"green\"},\"technical_lead_email\":\"[email protected]\",\"technical_lead_name\":\"Wendel Clark\"}]"));
26+
.body(is("[{\"archive_date\":\"20210125\",\"commits\":[],\"customer_contact_email\":\"[email protected]\",\"customer_contact_name\":\"Reg Dunlop\",\"customer_name\":\"customer1\","
27+
+ "\"description\":\"Charleston\",\"end_date\":\"20201225\",\"engagement_lead_email\":\"[email protected]\",\"engagement_lead_name\":\"Doug Gilmour\",\"location\":\"Raleigh, NC\","
28+
+ "\"ocp_cloud_provider_name\":\"GCP\",\"ocp_cloud_provider_region\":\"West\",\"ocp_cluster_size\":\"medium\",\"ocp_persistent_storage_size\":\"50GB\",\"ocp_sub_domain\":\"jello\","
29+
+ "\"ocp_version\":\"v4.2\",\"project_id\":0,\"project_name\":\"project1\",\"start_date\":\"20200202\",\"status\":{\"messages\":[{\"message\":\"This is message 1\",\"severity\":\"INFO\","
30+
+ "\"updated\":\"2020-06-23T21:25:31Z\"},{\"message\":\"This is message 2\",\"severity\":\"CRITICAL\",\"updated\":\"2020-06-22T11:15:11Z\"},{\"message\":\"This is message 3\",\"severity\":\"SUCCESS\","
31+
+ "\"updated\":\"2020-06-22T10:25:31Z\"}],\"overall_status\":\"yellow\",\"subsystems\":[{\"api\":\"https://api.....:6443\",\"info\":\"Deployment In Progress\",\"messages\":[{\"message\":\"This is message 1\","
32+
+ "\"severity\":\"INFO\",\"updated\":\"2020-06-23T21:25:31Z\"}],\"name\":\"openshift\",\"state\":\"provisioning\",\"status\":\"yellow\",\"updated\":\"2020-06-23T09:25:31Z\",\"web_console\":\"https://console......\"},"
33+
+ "{\"messages\":[{\"message\":\"This is message 1\",\"severity\":\"INFO\",\"updated\":\"2020-06-23T21:25:31Z\"}],\"name\":\"atlassian\",\"state\":\"operational\",\"status\":\"green\","
34+
+ "\"updated\":\"2020-06-22T20:15:37Z\"}]},\"technical_lead_email\":\"[email protected]\",\"technical_lead_name\":\"Wendel Clark\"}]"));
3235

3336
}
3437

@@ -126,8 +129,11 @@ void testGetStatusSuccess() {
126129
.get("/api/v1/engagements/customer/jello/lemon/status")
127130
.then()
128131
.statusCode(200)
129-
.body(is("{\"messages\":[\"This is message 1\",\"This is message 2\",\"This is message 3\"],\"openshift_api\":\"https://console.s11.core.rht-labs.com/\",\"openshift_web_console\":\"https://console.s11.core.rht-labs.com/\","
130-
+ "\"overall_status\":\"green\"}"));
132+
.body(is("{\"messages\":[{\"message\":\"This is message 1\",\"severity\":\"INFO\",\"updated\":\"2020-06-23T21:25:31Z\"},{\"message\":\"This is message 2\",\"severity\":\"CRITICAL\",\"updated\":\"2020-06-22T11:15:11Z\"},"
133+
+ "{\"message\":\"This is message 3\",\"severity\":\"SUCCESS\",\"updated\":\"2020-06-22T10:25:31Z\"}],\"overall_status\":\"yellow\",\"subsystems\":[{\"api\":\"https://api.....:6443\",\"info\":\"Deployment In Progress\","
134+
+ "\"messages\":[{\"message\":\"This is message 1\",\"severity\":\"INFO\",\"updated\":\"2020-06-23T21:25:31Z\"}],\"name\":\"openshift\",\"state\":\"provisioning\",\"status\":\"yellow\",\"updated\":\"2020-06-23T09:25:31Z\","
135+
+ "\"web_console\":\"https://console......\"},{\"messages\":[{\"message\":\"This is message 1\",\"severity\":\"INFO\",\"updated\":\"2020-06-23T21:25:31Z\"}],\"name\":\"atlassian\",\"state\":\"operational\",\"status\":\"green\","
136+
+ "\"updated\":\"2020-06-22T20:15:37Z\"}]}"));
131137
}
132138

133139
@Test
@@ -141,9 +147,12 @@ void testGetProjectSuccess() {
141147
.statusCode(200)
142148
.body(is("{\"archive_date\":\"20210125\",\"commits\":[],\"customer_contact_email\":\"[email protected]\",\"customer_contact_name\":\"Reg Dunlop\",\"customer_name\":\"customer1\",\"description\":\"Charleston\",\"end_date\":\"20201225\","
143149
+ "\"engagement_lead_email\":\"[email protected]\",\"engagement_lead_name\":\"Doug Gilmour\",\"location\":\"Raleigh, NC\",\"ocp_cloud_provider_name\":\"GCP\",\"ocp_cloud_provider_region\":\"West\",\"ocp_cluster_size\":\"medium\","
144-
+ "\"ocp_persistent_storage_size\":\"50GB\",\"ocp_sub_domain\":\"jello\",\"ocp_version\":\"v4.2\",\"project_id\":0,\"project_name\":\"project1\",\"start_date\":\"20200202\","
145-
+ "\"status\":{\"messages\":[\"This is message 1\",\"This is message 2\",\"This is message 3\"],\"openshift_api\":\"https://console.s11.core.rht-labs.com/\",\"openshift_web_console\":\"https://console.s11.core.rht-labs.com/\","
146-
+ "\"overall_status\":\"green\"},\"technical_lead_email\":\"[email protected]\",\"technical_lead_name\":\"Wendel Clark\"}"));
150+
+ "\"ocp_persistent_storage_size\":\"50GB\",\"ocp_sub_domain\":\"jello\",\"ocp_version\":\"v4.2\",\"project_id\":0,\"project_name\":\"project1\",\"start_date\":\"20200202\",\"status\":{\"messages\":[{\"message\":\"This is message 1\","
151+
+ "\"severity\":\"INFO\",\"updated\":\"2020-06-23T21:25:31Z\"},{\"message\":\"This is message 2\",\"severity\":\"CRITICAL\",\"updated\":\"2020-06-22T11:15:11Z\"},{\"message\":\"This is message 3\",\"severity\":\"SUCCESS\","
152+
+ "\"updated\":\"2020-06-22T10:25:31Z\"}],\"overall_status\":\"yellow\",\"subsystems\":[{\"api\":\"https://api.....:6443\",\"info\":\"Deployment In Progress\",\"messages\":[{\"message\":\"This is message 1\",\"severity\":\"INFO\","
153+
+ "\"updated\":\"2020-06-23T21:25:31Z\"}],\"name\":\"openshift\",\"state\":\"provisioning\",\"status\":\"yellow\",\"updated\":\"2020-06-23T09:25:31Z\",\"web_console\":\"https://console......\"},"
154+
+ "{\"messages\":[{\"message\":\"This is message 1\",\"severity\":\"INFO\",\"updated\":\"2020-06-23T21:25:31Z\"}],\"name\":\"atlassian\",\"state\":\"operational\",\"status\":\"green\",\"updated\":\"2020-06-22T20:15:37Z\"}]},"
155+
+ "\"technical_lead_email\":\"[email protected]\",\"technical_lead_name\":\"Wendel Clark\"}"));
147156
}
148157

149158
@Test

src/test/resources/status.json

Lines changed: 52 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,53 @@
11
{
2-
"messages": [
3-
"This is message 1",
4-
"This is message 2",
5-
"This is message 3"
6-
],
7-
"openshift_api": "https://console.s11.core.rht-labs.com/",
8-
"openshift_web_console": "https://console.s11.core.rht-labs.com/",
9-
"overall_status": "green"
10-
}
2+
"overall_status": "yellow",
3+
"messages": [
4+
{
5+
"severity": "INFO",
6+
"message": "This is message 1",
7+
"updated": "2020-06-23T21:25:31Z"
8+
},
9+
{
10+
"severity": "CRITICAL",
11+
"message": "This is message 2",
12+
"updated": "2020-06-22T11:15:11Z"
13+
},
14+
{
15+
"severity": "SUCCESS",
16+
"message": "This is message 3",
17+
"updated": "2020-06-22T10:25:31Z"
18+
}
19+
],
20+
"subsystems": [
21+
{
22+
"name": "openshift",
23+
"status": "yellow",
24+
"state": "provisioning",
25+
"info": "Deployment In Progress",
26+
"updated": "2020-06-23T09:25:31Z",
27+
"web_console": "https://console......",
28+
"api": "https://api.....:6443",
29+
"messages": [
30+
{
31+
"severity": "INFO",
32+
"message": "This is message 1",
33+
"updated": "2020-06-23T21:25:31Z"
34+
}
35+
]
36+
},
37+
{
38+
"name": "atlassian",
39+
"status": "green",
40+
"state": "operational",
41+
"info": null,
42+
"updated": "2020-06-22T20:15:37Z",
43+
"url": "https://mycompany.atlassian.net",
44+
"messages": [
45+
{
46+
"severity": "INFO",
47+
"message": "This is message 1",
48+
"updated": "2020-06-23T21:25:31Z"
49+
}
50+
]
51+
}
52+
]
53+
}

0 commit comments

Comments
 (0)