You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@brooklyn.apache.org by dr...@apache.org on 2017/07/17 14:57:18 UTC

[1/3] brooklyn-server git commit: Adds /v1/server/planeid

Repository: brooklyn-server
Updated Branches:
  refs/heads/master 2dbfe7cdb -> 6e5c2c252


Adds /v1/server/planeid

Project: http://git-wip-us.apache.org/repos/asf/brooklyn-server/repo
Commit: http://git-wip-us.apache.org/repos/asf/brooklyn-server/commit/7bf13ae7
Tree: http://git-wip-us.apache.org/repos/asf/brooklyn-server/tree/7bf13ae7
Diff: http://git-wip-us.apache.org/repos/asf/brooklyn-server/diff/7bf13ae7

Branch: refs/heads/master
Commit: 7bf13ae7e09a953561d75bbdb561192e7605153c
Parents: 2dbfe7c
Author: Aled Sage <al...@gmail.com>
Authored: Mon Jul 17 13:21:55 2017 +0100
Committer: Aled Sage <al...@gmail.com>
Committed: Mon Jul 17 13:21:55 2017 +0100

----------------------------------------------------------------------
 .../main/java/org/apache/brooklyn/rest/api/ServerApi.java |  5 +++++
 .../apache/brooklyn/rest/resources/ServerResource.java    | 10 ++++++++++
 .../brooklyn/rest/resources/ServerResourceTest.java       |  6 ++++++
 .../apache/brooklyn/rest/testing/BrooklynRestApiTest.java |  2 ++
 4 files changed, 23 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/7bf13ae7/rest/rest-api/src/main/java/org/apache/brooklyn/rest/api/ServerApi.java
----------------------------------------------------------------------
diff --git a/rest/rest-api/src/main/java/org/apache/brooklyn/rest/api/ServerApi.java b/rest/rest-api/src/main/java/org/apache/brooklyn/rest/api/ServerApi.java
index 12e2c1c..766dcca 100644
--- a/rest/rest-api/src/main/java/org/apache/brooklyn/rest/api/ServerApi.java
+++ b/rest/rest-api/src/main/java/org/apache/brooklyn/rest/api/ServerApi.java
@@ -85,6 +85,11 @@ public interface ServerApi {
     public VersionSummary getVersion();
 
     @GET
+    @Path("/planeid")
+    @ApiOperation(value = "Return the plane id (an identifier that is stable across restarts and HA failovers)")
+    public String getPlaneId();
+
+    @GET
     @Path("/up")
     @ApiOperation(value = "Returns whether this server is up - fully started, and not stopping, though it may have errors")
     public boolean isUp();

http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/7bf13ae7/rest/rest-resources/src/main/java/org/apache/brooklyn/rest/resources/ServerResource.java
----------------------------------------------------------------------
diff --git a/rest/rest-resources/src/main/java/org/apache/brooklyn/rest/resources/ServerResource.java b/rest/rest-resources/src/main/java/org/apache/brooklyn/rest/resources/ServerResource.java
index 20a371a..d1215bc 100644
--- a/rest/rest-resources/src/main/java/org/apache/brooklyn/rest/resources/ServerResource.java
+++ b/rest/rest-resources/src/main/java/org/apache/brooklyn/rest/resources/ServerResource.java
@@ -346,6 +346,16 @@ public class ServerResource extends AbstractBrooklynRestResource implements Serv
     }
 
     @Override
+    public String getPlaneId() {
+        if (!Entitlements.isEntitled(mgmt().getEntitlementManager(), Entitlements.SERVER_STATUS, null))
+            throw WebResourceUtils.forbidden("User '%s' is not authorized for this operation", Entitlements.getEntitlementContext().user());
+
+        Maybe<ManagementContext> mm = mgmtMaybe();
+        Maybe<String> result = (mm.isPresent()) ? mm.get().getManagementPlaneIdMaybe() : Maybe.absent();
+        return result.isPresent() ? result.get() : "";
+    }
+
+    @Override
     public boolean isUp() {
         if (!Entitlements.isEntitled(mgmt().getEntitlementManager(), Entitlements.SERVER_STATUS, null))
             throw WebResourceUtils.forbidden("User '%s' is not authorized for this operation", Entitlements.getEntitlementContext().user());

http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/7bf13ae7/rest/rest-resources/src/test/java/org/apache/brooklyn/rest/resources/ServerResourceTest.java
----------------------------------------------------------------------
diff --git a/rest/rest-resources/src/test/java/org/apache/brooklyn/rest/resources/ServerResourceTest.java b/rest/rest-resources/src/test/java/org/apache/brooklyn/rest/resources/ServerResourceTest.java
index e423951..3087186 100644
--- a/rest/rest-resources/src/test/java/org/apache/brooklyn/rest/resources/ServerResourceTest.java
+++ b/rest/rest-resources/src/test/java/org/apache/brooklyn/rest/resources/ServerResourceTest.java
@@ -59,6 +59,12 @@ public class ServerResourceTest extends BrooklynRestResourceTest {
     }
 
     @Test
+    public void testGetPlaneId() throws Exception {
+        String planeId = client().path("/server/planeid").get(String.class);
+        assertEquals(planeId, manager.getManagementPlaneIdMaybe().get());
+    }
+
+    @Test
     public void testGetStatus() throws Exception {
         ManagementNodeState nodeState = client().path("/server/ha/state").get(ManagementNodeState.class);
         assertEquals(nodeState.name(), "MASTER");

http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/7bf13ae7/rest/rest-resources/src/test/java/org/apache/brooklyn/rest/testing/BrooklynRestApiTest.java
----------------------------------------------------------------------
diff --git a/rest/rest-resources/src/test/java/org/apache/brooklyn/rest/testing/BrooklynRestApiTest.java b/rest/rest-resources/src/test/java/org/apache/brooklyn/rest/testing/BrooklynRestApiTest.java
index 6c0b747..0d38eaa 100644
--- a/rest/rest-resources/src/test/java/org/apache/brooklyn/rest/testing/BrooklynRestApiTest.java
+++ b/rest/rest-resources/src/test/java/org/apache/brooklyn/rest/testing/BrooklynRestApiTest.java
@@ -146,6 +146,8 @@ public abstract class BrooklynRestApiTest {
                 manager = new LocalManagementContextForTests();
             }
             manager.getHighAvailabilityManager().disabled();
+            ((LocalManagementContext)manager).generateManagementPlaneId();
+
             BasicLocationRegistry.addNamedLocationLocalhost(manager);
             
             new BrooklynCampPlatformLauncherNoServer()


[3/3] brooklyn-server git commit: This closes #765

Posted by dr...@apache.org.
This closes #765


Project: http://git-wip-us.apache.org/repos/asf/brooklyn-server/repo
Commit: http://git-wip-us.apache.org/repos/asf/brooklyn-server/commit/6e5c2c25
Tree: http://git-wip-us.apache.org/repos/asf/brooklyn-server/tree/6e5c2c25
Diff: http://git-wip-us.apache.org/repos/asf/brooklyn-server/diff/6e5c2c25

Branch: refs/heads/master
Commit: 6e5c2c25230861fe2ccc002f8cd8830aca08e906
Parents: 2dbfe7c 498dff0
Author: Duncan Godwin <dr...@googlemail.com>
Authored: Mon Jul 17 15:57:12 2017 +0100
Committer: Duncan Godwin <dr...@googlemail.com>
Committed: Mon Jul 17 15:57:12 2017 +0100

----------------------------------------------------------------------
 .../main/java/org/apache/brooklyn/rest/api/ServerApi.java |  5 +++++
 .../brooklyn/rest/domain/HighAvailabilitySummary.java     | 10 +++++++++-
 .../apache/brooklyn/rest/resources/ServerResource.java    | 10 ++++++++++
 .../rest/transform/HighAvailabilityTransformer.java       |  2 +-
 .../brooklyn/rest/resources/ServerResourceTest.java       |  8 ++++++++
 .../apache/brooklyn/rest/testing/BrooklynRestApiTest.java |  2 ++
 6 files changed, 35 insertions(+), 2 deletions(-)
----------------------------------------------------------------------



[2/3] brooklyn-server git commit: Adds plane-id to result of /v1/server/ha/states

Posted by dr...@apache.org.
Adds plane-id to result of /v1/server/ha/states

Project: http://git-wip-us.apache.org/repos/asf/brooklyn-server/repo
Commit: http://git-wip-us.apache.org/repos/asf/brooklyn-server/commit/498dff05
Tree: http://git-wip-us.apache.org/repos/asf/brooklyn-server/tree/498dff05
Diff: http://git-wip-us.apache.org/repos/asf/brooklyn-server/diff/498dff05

Branch: refs/heads/master
Commit: 498dff0550e3e439a476d2ee7b5fa9a794585d3c
Parents: 7bf13ae
Author: Aled Sage <al...@gmail.com>
Authored: Mon Jul 17 13:22:22 2017 +0100
Committer: Aled Sage <al...@gmail.com>
Committed: Mon Jul 17 13:22:22 2017 +0100

----------------------------------------------------------------------
 .../brooklyn/rest/domain/HighAvailabilitySummary.java     | 10 +++++++++-
 .../rest/transform/HighAvailabilityTransformer.java       |  2 +-
 .../brooklyn/rest/resources/ServerResourceTest.java       |  2 ++
 3 files changed, 12 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/498dff05/rest/rest-api/src/main/java/org/apache/brooklyn/rest/domain/HighAvailabilitySummary.java
----------------------------------------------------------------------
diff --git a/rest/rest-api/src/main/java/org/apache/brooklyn/rest/domain/HighAvailabilitySummary.java b/rest/rest-api/src/main/java/org/apache/brooklyn/rest/domain/HighAvailabilitySummary.java
index 037c08e..70752da 100644
--- a/rest/rest-api/src/main/java/org/apache/brooklyn/rest/domain/HighAvailabilitySummary.java
+++ b/rest/rest-api/src/main/java/org/apache/brooklyn/rest/domain/HighAvailabilitySummary.java
@@ -101,22 +101,29 @@ public class HighAvailabilitySummary implements Serializable {
         }
     }
 
+    private final String planeId;
     private final String ownId;
     private final String masterId;
     private final Map<String, HaNodeSummary> nodes;
     private final Map<String, URI> links;
 
     public HighAvailabilitySummary(
+            @JsonProperty("planeId") String planeId,
             @JsonProperty("ownId") String ownId,
             @JsonProperty("masterId") String masterId,
             @JsonProperty("nodes") Map<String, HaNodeSummary> nodes,
             @JsonProperty("links") Map<String, URI> links) {
+        this.planeId = planeId;
         this.ownId = ownId;
         this.masterId = masterId;
         this.nodes = (nodes == null) ? ImmutableMap.<String, HaNodeSummary>of() : nodes;
         this.links = (links == null) ? ImmutableMap.<String, URI>of() : ImmutableMap.copyOf(links);
     }
 
+    public String getPlaneId() {
+        return planeId;
+    }
+
     public String getOwnId() {
         return ownId;
     }
@@ -138,7 +145,8 @@ public class HighAvailabilitySummary implements Serializable {
         if (this == o) return true;
         if (!(o instanceof HighAvailabilitySummary)) return false;
         HighAvailabilitySummary that = (HighAvailabilitySummary) o;
-        return Objects.equals(ownId, that.ownId) &&
+        return Objects.equals(planeId, that.planeId) &&
+                Objects.equals(ownId, that.ownId) &&
                 Objects.equals(masterId, that.masterId) &&
                 Objects.equals(nodes, that.nodes) &&
                 Objects.equals(links, that.links);

http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/498dff05/rest/rest-resources/src/main/java/org/apache/brooklyn/rest/transform/HighAvailabilityTransformer.java
----------------------------------------------------------------------
diff --git a/rest/rest-resources/src/main/java/org/apache/brooklyn/rest/transform/HighAvailabilityTransformer.java b/rest/rest-resources/src/main/java/org/apache/brooklyn/rest/transform/HighAvailabilityTransformer.java
index 41b0f22..98909c8 100644
--- a/rest/rest-resources/src/main/java/org/apache/brooklyn/rest/transform/HighAvailabilityTransformer.java
+++ b/rest/rest-resources/src/main/java/org/apache/brooklyn/rest/transform/HighAvailabilityTransformer.java
@@ -40,7 +40,7 @@ public class HighAvailabilityTransformer {
         // TODO What links?
         ImmutableMap.Builder<String, URI> lb = ImmutableMap.<String, URI>builder();
 
-        return new HighAvailabilitySummary(ownNodeId, memento.getMasterNodeId(), nodes, lb.build());
+        return new HighAvailabilitySummary(memento.getPlaneId(), ownNodeId, memento.getMasterNodeId(), nodes, lb.build());
     }
 
     public static HaNodeSummary haNodeSummary(ManagementNodeSyncRecord memento) {

http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/498dff05/rest/rest-resources/src/test/java/org/apache/brooklyn/rest/resources/ServerResourceTest.java
----------------------------------------------------------------------
diff --git a/rest/rest-resources/src/test/java/org/apache/brooklyn/rest/resources/ServerResourceTest.java b/rest/rest-resources/src/test/java/org/apache/brooklyn/rest/resources/ServerResourceTest.java
index 3087186..e1ca759 100644
--- a/rest/rest-resources/src/test/java/org/apache/brooklyn/rest/resources/ServerResourceTest.java
+++ b/rest/rest-resources/src/test/java/org/apache/brooklyn/rest/resources/ServerResourceTest.java
@@ -77,7 +77,9 @@ public class ServerResourceTest extends BrooklynRestResourceTest {
         HighAvailabilitySummary summary = client().path("/server/ha/states").get(HighAvailabilitySummary.class);
         log.info("HA summary is: "+summary);
         
+        String planeId = getManagementContext().getManagementPlaneIdMaybe().get();
         String ownNodeId = getManagementContext().getManagementNodeId();
+        assertEquals(summary.getPlaneId(), planeId);
         assertEquals(summary.getOwnId(), ownNodeId);
         assertEquals(summary.getMasterId(), ownNodeId);
         assertEquals(summary.getNodes().keySet(), ImmutableSet.of(ownNodeId));