You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@brooklyn.apache.org by he...@apache.org on 2015/04/08 11:26:26 UTC
[1/4] incubator-brooklyn git commit: Rabbit mq management flag
Repository: incubator-brooklyn
Updated Branches:
refs/heads/master a9e6fc8e6 -> 3c6ffc483
Rabbit mq management flag
Add flag enableManagementPlugin defaulting to false
Project: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/commit/497f99b2
Tree: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/tree/497f99b2
Diff: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/diff/497f99b2
Branch: refs/heads/master
Commit: 497f99b2af7c72c5b8a440b2fe4d6fa16411369c
Parents: 1f14917
Author: Duncan Grant <du...@cloudsoftcorp.com>
Authored: Tue Apr 7 10:45:46 2015 +0100
Committer: Duncan Grant <du...@cloudsoftcorp.com>
Committed: Tue Apr 7 10:57:51 2015 +0100
----------------------------------------------------------------------
software/messaging/pom.xml | 1 +
.../entity/messaging/rabbit/RabbitBroker.java | 30 ++++++++---
.../messaging/rabbit/RabbitBrokerImpl.java | 24 ++++++---
.../messaging/rabbit/RabbitSshDriver.java | 54 ++++++++++++--------
.../entity/messaging/rabbit/rabbitmq.config | 5 ++
5 files changed, 79 insertions(+), 35 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/497f99b2/software/messaging/pom.xml
----------------------------------------------------------------------
diff --git a/software/messaging/pom.xml b/software/messaging/pom.xml
index 5c95a0b..8730164 100644
--- a/software/messaging/pom.xml
+++ b/software/messaging/pom.xml
@@ -57,6 +57,7 @@
<exclude>src/main/resources/brooklyn/entity/messaging/kafka/server.properties</exclude>
<exclude>src/main/resources/brooklyn/entity/messaging/kafka/zookeeper.properties</exclude>
<exclude>src/main/resources/brooklyn/entity/messaging/storm/storm.yaml</exclude>
+ <exclude>src/main/resources/brooklyn/entity/messaging/rabbit/rabbitmq.config</exclude>
</excludes>
</configuration>
</plugin>
http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/497f99b2/software/messaging/src/main/java/brooklyn/entity/messaging/rabbit/RabbitBroker.java
----------------------------------------------------------------------
diff --git a/software/messaging/src/main/java/brooklyn/entity/messaging/rabbit/RabbitBroker.java b/software/messaging/src/main/java/brooklyn/entity/messaging/rabbit/RabbitBroker.java
index 54fd741..f883aec 100644
--- a/software/messaging/src/main/java/brooklyn/entity/messaging/rabbit/RabbitBroker.java
+++ b/software/messaging/src/main/java/brooklyn/entity/messaging/rabbit/RabbitBroker.java
@@ -18,8 +18,6 @@
*/
package brooklyn.entity.messaging.rabbit;
-import java.util.Map;
-
import brooklyn.catalog.Catalog;
import brooklyn.config.ConfigKey;
import brooklyn.entity.basic.ConfigKeys;
@@ -27,13 +25,13 @@ import brooklyn.entity.basic.SoftwareProcess;
import brooklyn.entity.messaging.MessageBroker;
import brooklyn.entity.messaging.amqp.AmqpServer;
import brooklyn.entity.proxying.ImplementedBy;
-import brooklyn.event.basic.BasicAttributeSensorAndConfigKey;
-import brooklyn.event.basic.BasicConfigKey;
-import brooklyn.event.basic.PortAttributeSensorAndConfigKey;
+import brooklyn.event.AttributeSensor;
+import brooklyn.event.basic.*;
import brooklyn.util.flags.SetFromFlag;
-
import com.google.common.annotations.Beta;
+import java.util.Map;
+
/**
* An {@link brooklyn.entity.Entity} that represents a single Rabbit MQ broker instance, using AMQP 0-9-1.
*/
@@ -50,7 +48,12 @@ public interface RabbitBroker extends SoftwareProcess, MessageBroker, AmqpServer
@SetFromFlag("erlangVersion")
public static final BasicConfigKey<String> ERLANG_VERSION = new BasicConfigKey<String>(String.class, "erlang.version", "Erlang runtime version", "R15B");
-
+
+ @SetFromFlag("rabbitmqConfigTemplateUrl")
+ ConfigKey<String> CONFIG_TEMPLATE_URL = ConfigKeys.newStringConfigKey(
+ "rabbitmq.templateUrl", "Template file (in freemarker format) for the rabbitmq.config config file",
+ "classpath://brooklyn/entity/messaging/rabbit/rabbitmq.config");
+
@SetFromFlag("amqpPort")
public static final PortAttributeSensorAndConfigKey AMQP_PORT = AmqpServer.AMQP_PORT;
@@ -60,7 +63,18 @@ public interface RabbitBroker extends SoftwareProcess, MessageBroker, AmqpServer
@SetFromFlag("amqpVersion")
public static final BasicAttributeSensorAndConfigKey<String> AMQP_VERSION = new BasicAttributeSensorAndConfigKey<String>(
AmqpServer.AMQP_VERSION, AmqpServer.AMQP_0_9_1);
-
+
+ @SetFromFlag("managmentPort")
+ public static final PortAttributeSensorAndConfigKey MANAGEMENT_PORT = new PortAttributeSensorAndConfigKey(
+ "rabbitmq.management.port", "Port on which management interface will be available", "15672+");
+
+ public static AttributeSensor<String> MANAGEMENT_URL = Sensors.newStringSensor(
+ "rabbitmq.management.url", "Management URL is only available if management plugin flag is true");
+
+ @SetFromFlag("enableManagementPlugin")
+ public static final ConfigKey<Boolean> ENABLE_MANAGEMENT_PLUGIN = ConfigKeys.newBooleanConfigKey(
+ "rabbitmq.management.plugin", "Management plugin will be enabled", false);
+
RabbitQueue createQueue(Map properties);
// TODO required by RabbitDestination due to close-coupling between that and RabbitBroker; how best to improve?
http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/497f99b2/software/messaging/src/main/java/brooklyn/entity/messaging/rabbit/RabbitBrokerImpl.java
----------------------------------------------------------------------
diff --git a/software/messaging/src/main/java/brooklyn/entity/messaging/rabbit/RabbitBrokerImpl.java b/software/messaging/src/main/java/brooklyn/entity/messaging/rabbit/RabbitBrokerImpl.java
index 91b6d06..0184e73 100644
--- a/software/messaging/src/main/java/brooklyn/entity/messaging/rabbit/RabbitBrokerImpl.java
+++ b/software/messaging/src/main/java/brooklyn/entity/messaging/rabbit/RabbitBrokerImpl.java
@@ -18,16 +18,16 @@
*/
package brooklyn.entity.messaging.rabbit;
-import java.util.Map;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
import brooklyn.entity.basic.Entities;
import brooklyn.entity.basic.SoftwareProcessImpl;
import brooklyn.entity.proxying.EntitySpec;
-
import com.google.common.base.Objects.ToStringHelper;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.util.Map;
+
+import static java.lang.String.format;
/**
* An {@link brooklyn.entity.Entity} that represents a single Rabbit MQ broker instance, using AMQP 0-9-1.
@@ -70,7 +70,7 @@ public class RabbitBrokerImpl extends SoftwareProcessImpl implements RabbitBroke
public void setBrokerUrl() {
String urlFormat = "amqp://guest:guest@%s:%d/%s";
- setAttribute(BROKER_URL, String.format(urlFormat, getAttribute(HOSTNAME), getAttribute(AMQP_PORT), getAttribute(VIRTUAL_HOST_NAME)));
+ setAttribute(BROKER_URL, format(urlFormat, getAttribute(HOSTNAME), getAttribute(AMQP_PORT), getAttribute(VIRTUAL_HOST_NAME)));
}
public RabbitQueue createQueue(Map properties) {
@@ -92,6 +92,8 @@ public class RabbitBrokerImpl extends SoftwareProcessImpl implements RabbitBroke
connectServiceUpIsRunning();
setBrokerUrl();
+
+ setAttribute(MANAGEMENT_URL, format("http://%s:%s/", getAttribute(HOSTNAME), getAttribute(MANAGEMENT_PORT)));
}
@Override
@@ -100,6 +102,14 @@ public class RabbitBrokerImpl extends SoftwareProcessImpl implements RabbitBroke
disconnectServiceUpIsRunning();
}
+ public boolean getEnableManagementPlugin() {
+ return getConfig(ENABLE_MANAGEMENT_PLUGIN);
+ }
+
+ public Integer getManagementPort() {
+ return getAttribute(MANAGEMENT_PORT);
+ }
+
@Override
protected ToStringHelper toStringHelper() {
return super.toStringHelper().add("amqpPort", getAmqpPort());
http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/497f99b2/software/messaging/src/main/java/brooklyn/entity/messaging/rabbit/RabbitSshDriver.java
----------------------------------------------------------------------
diff --git a/software/messaging/src/main/java/brooklyn/entity/messaging/rabbit/RabbitSshDriver.java b/software/messaging/src/main/java/brooklyn/entity/messaging/rabbit/RabbitSshDriver.java
index 3219a06..534edb5 100644
--- a/software/messaging/src/main/java/brooklyn/entity/messaging/rabbit/RabbitSshDriver.java
+++ b/software/messaging/src/main/java/brooklyn/entity/messaging/rabbit/RabbitSshDriver.java
@@ -18,26 +18,25 @@
*/
package brooklyn.entity.messaging.rabbit;
-import static brooklyn.util.ssh.BashCommands.*;
-import static java.lang.String.format;
-
-import java.util.List;
-import java.util.Map;
-
-import com.google.common.base.Strings;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
import brooklyn.entity.basic.AbstractSoftwareProcessSshDriver;
import brooklyn.entity.basic.Entities;
+import brooklyn.entity.basic.lifecycle.ScriptHelper;
import brooklyn.entity.messaging.amqp.AmqpServer;
import brooklyn.location.basic.SshMachineLocation;
import brooklyn.util.collections.MutableMap;
import brooklyn.util.net.Networking;
import brooklyn.util.os.Os;
-
+import com.google.common.base.Strings;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMap;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.util.List;
+import java.util.Map;
+
+import static brooklyn.util.ssh.BashCommands.*;
+import static java.lang.String.format;
/**
* TODO javadoc
@@ -52,7 +51,7 @@ public class RabbitSshDriver extends AbstractSoftwareProcessSshDriver implements
"6", "6-8",
"7", "7-5"
);
-
+
public RabbitSshDriver(RabbitBrokerImpl entity, SshMachineLocation machine) {
super(entity, machine);
}
@@ -75,7 +74,7 @@ public class RabbitSshDriver extends AbstractSoftwareProcessSshDriver implements
resolver = Entities.newDownloader(this);
setExpandedInstallDir(Os.mergePaths(getInstallDir(), resolver.getUnpackedDirectoryName(format("rabbitmq_server-%s", getVersion()))));
}
-
+
@Override
public void install() {
List<String> urls = resolver.getTargets();
@@ -124,11 +123,20 @@ public class RabbitSshDriver extends AbstractSoftwareProcessSshDriver implements
@Override
public void customize() {
Networking.checkPortsValid(MutableMap.of("amqpPort", getAmqpPort()));
- newScript(CUSTOMIZING)
- .body.append(
- format("cp -R %s/* .", getExpandedInstallDir())
- )
- .execute();
+ copyTemplate(entity.getConfig(RabbitBroker.CONFIG_TEMPLATE_URL), getConfigPath() + ".config");
+ ScriptHelper scriptHelper = newScript(CUSTOMIZING);
+
+ scriptHelper.body.append(
+ format("cp -R %s/* .", getExpandedInstallDir())
+ );
+
+ if (entity.getConfig(RabbitBroker.ENABLE_MANAGEMENT_PLUGIN)) {
+ scriptHelper.body.append(
+ "./sbin/rabbitmq-plugins enable rabbitmq_management"
+ );
+ }
+
+ scriptHelper.execute();
}
@Override
@@ -155,8 +163,9 @@ public class RabbitSshDriver extends AbstractSoftwareProcessSshDriver implements
).execute();
}
+
public String getPidFile() { return "rabbitmq.pid"; }
-
+
@Override
public boolean isRunning() {
return newScript(MutableMap.of("usePidFile", false), CHECK_RUNNING)
@@ -164,7 +173,6 @@ public class RabbitSshDriver extends AbstractSoftwareProcessSshDriver implements
.execute() == 0;
}
-
@Override
public void stop() {
newScript(MutableMap.of("usePidFile", false), STOPPING)
@@ -172,6 +180,7 @@ public class RabbitSshDriver extends AbstractSoftwareProcessSshDriver implements
.execute();
}
+
@Override
public void kill() {
stop(); // TODO No pid file to easily do `kill -9`
@@ -186,6 +195,11 @@ public class RabbitSshDriver extends AbstractSoftwareProcessSshDriver implements
.put("RABBITMQ_NODENAME", getEntity().getId())
.put("RABBITMQ_NODE_PORT", getAmqpPort().toString())
.put("RABBITMQ_PID_FILE", getRunDir()+"/"+getPidFile())
+ .put("RABBITMQ_CONFIG_FILE", getConfigPath())
.build();
}
+
+ private String getConfigPath() {
+ return getInstallDir() + "/rabbitmq";
+ }
}
http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/497f99b2/software/messaging/src/main/resources/brooklyn/entity/messaging/rabbit/rabbitmq.config
----------------------------------------------------------------------
diff --git a/software/messaging/src/main/resources/brooklyn/entity/messaging/rabbit/rabbitmq.config b/software/messaging/src/main/resources/brooklyn/entity/messaging/rabbit/rabbitmq.config
new file mode 100644
index 0000000..b4428f0
--- /dev/null
+++ b/software/messaging/src/main/resources/brooklyn/entity/messaging/rabbit/rabbitmq.config
@@ -0,0 +1,5 @@
+[
+<#if entity.enableManagementPlugin>
+ {rabbitmq_mochiweb, [{listeners, [{mgmt, [{port, ${entity.managementPort?c}}]}]}]}
+</#if>
+].
\ No newline at end of file
[3/4] incubator-brooklyn git commit: minor cr changes
Posted by he...@apache.org.
minor cr changes
Project: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/commit/9538e7eb
Tree: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/tree/9538e7eb
Diff: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/diff/9538e7eb
Branch: refs/heads/master
Commit: 9538e7eb3f7dcb852cfbc00428519f38159c7a3b
Parents: 58b3704
Author: Duncan Grant <du...@cloudsoftcorp.com>
Authored: Tue Apr 7 16:54:36 2015 +0100
Committer: Duncan Grant <du...@cloudsoftcorp.com>
Committed: Tue Apr 7 16:54:36 2015 +0100
----------------------------------------------------------------------
.../entity/messaging/rabbit/RabbitBroker.java | 14 +++++++++-----
.../entity/messaging/rabbit/RabbitBrokerImpl.java | 18 +++++++++++-------
2 files changed, 20 insertions(+), 12 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/9538e7eb/software/messaging/src/main/java/brooklyn/entity/messaging/rabbit/RabbitBroker.java
----------------------------------------------------------------------
diff --git a/software/messaging/src/main/java/brooklyn/entity/messaging/rabbit/RabbitBroker.java b/software/messaging/src/main/java/brooklyn/entity/messaging/rabbit/RabbitBroker.java
index f883aec..be21c5e 100644
--- a/software/messaging/src/main/java/brooklyn/entity/messaging/rabbit/RabbitBroker.java
+++ b/software/messaging/src/main/java/brooklyn/entity/messaging/rabbit/RabbitBroker.java
@@ -18,6 +18,10 @@
*/
package brooklyn.entity.messaging.rabbit;
+import java.util.Map;
+
+import com.google.common.annotations.Beta;
+
import brooklyn.catalog.Catalog;
import brooklyn.config.ConfigKey;
import brooklyn.entity.basic.ConfigKeys;
@@ -26,11 +30,11 @@ import brooklyn.entity.messaging.MessageBroker;
import brooklyn.entity.messaging.amqp.AmqpServer;
import brooklyn.entity.proxying.ImplementedBy;
import brooklyn.event.AttributeSensor;
-import brooklyn.event.basic.*;
+import brooklyn.event.basic.BasicAttributeSensorAndConfigKey;
+import brooklyn.event.basic.BasicConfigKey;
+import brooklyn.event.basic.PortAttributeSensorAndConfigKey;
+import brooklyn.event.basic.Sensors;
import brooklyn.util.flags.SetFromFlag;
-import com.google.common.annotations.Beta;
-
-import java.util.Map;
/**
* An {@link brooklyn.entity.Entity} that represents a single Rabbit MQ broker instance, using AMQP 0-9-1.
@@ -66,7 +70,7 @@ public interface RabbitBroker extends SoftwareProcess, MessageBroker, AmqpServer
@SetFromFlag("managmentPort")
public static final PortAttributeSensorAndConfigKey MANAGEMENT_PORT = new PortAttributeSensorAndConfigKey(
- "rabbitmq.management.port", "Port on which management interface will be available", "15672+");
+ "rabbitmq.management.port", "Port on which management interface will be available", "15672+");
public static AttributeSensor<String> MANAGEMENT_URL = Sensors.newStringSensor(
"rabbitmq.management.url", "Management URL is only available if management plugin flag is true");
http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/9538e7eb/software/messaging/src/main/java/brooklyn/entity/messaging/rabbit/RabbitBrokerImpl.java
----------------------------------------------------------------------
diff --git a/software/messaging/src/main/java/brooklyn/entity/messaging/rabbit/RabbitBrokerImpl.java b/software/messaging/src/main/java/brooklyn/entity/messaging/rabbit/RabbitBrokerImpl.java
index fbbe384..b317bf8 100644
--- a/software/messaging/src/main/java/brooklyn/entity/messaging/rabbit/RabbitBrokerImpl.java
+++ b/software/messaging/src/main/java/brooklyn/entity/messaging/rabbit/RabbitBrokerImpl.java
@@ -18,16 +18,18 @@
*/
package brooklyn.entity.messaging.rabbit;
-import brooklyn.entity.basic.Entities;
-import brooklyn.entity.basic.SoftwareProcessImpl;
-import brooklyn.entity.proxying.EntitySpec;
-import com.google.common.base.Objects.ToStringHelper;
+import static java.lang.String.format;
+
+import java.util.Map;
+
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import java.util.Map;
+import com.google.common.base.Objects.ToStringHelper;
-import static java.lang.String.format;
+import brooklyn.entity.basic.Entities;
+import brooklyn.entity.basic.SoftwareProcessImpl;
+import brooklyn.entity.proxying.EntitySpec;
/**
* An {@link brooklyn.entity.Entity} that represents a single Rabbit MQ broker instance, using AMQP 0-9-1.
@@ -93,7 +95,9 @@ public class RabbitBrokerImpl extends SoftwareProcessImpl implements RabbitBroke
setBrokerUrl();
- setAttribute(MANAGEMENT_URL, format("http://%s:%s/", getAttribute(HOSTNAME), getAttribute(MANAGEMENT_PORT)));
+ if (getEnableManagementPlugin()) {
+ setAttribute(MANAGEMENT_URL, format("http://%s:%s/", getAttribute(HOSTNAME), getAttribute(MANAGEMENT_PORT)));
+ }
}
@Override
[4/4] incubator-brooklyn git commit: This closes #584
Posted by he...@apache.org.
This closes #584
Project: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/commit/3c6ffc48
Tree: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/tree/3c6ffc48
Diff: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/diff/3c6ffc48
Branch: refs/heads/master
Commit: 3c6ffc483ff202971a0d25d006987c8d8eadcd36
Parents: a9e6fc8 9538e7e
Author: Alex Heneveld <al...@cloudsoftcorp.com>
Authored: Wed Apr 8 10:26:15 2015 +0100
Committer: Alex Heneveld <al...@cloudsoftcorp.com>
Committed: Wed Apr 8 10:26:15 2015 +0100
----------------------------------------------------------------------
software/messaging/pom.xml | 1 +
.../entity/messaging/rabbit/RabbitBroker.java | 26 ++++++++++--
.../messaging/rabbit/RabbitBrokerImpl.java | 20 +++++++--
.../messaging/rabbit/RabbitSshDriver.java | 43 ++++++++++++++------
.../entity/messaging/rabbit/rabbitmq.config | 5 +++
5 files changed, 75 insertions(+), 20 deletions(-)
----------------------------------------------------------------------
[2/4] incubator-brooklyn git commit: Minor changes re code review
Posted by he...@apache.org.
Minor changes re code review
Project: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/commit/58b37044
Tree: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/tree/58b37044
Diff: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/diff/58b37044
Branch: refs/heads/master
Commit: 58b3704428e0ed6d15bc289132ffd6f27fc5a13f
Parents: 497f99b
Author: Duncan Grant <du...@cloudsoftcorp.com>
Authored: Tue Apr 7 16:31:28 2015 +0100
Committer: Duncan Grant <du...@cloudsoftcorp.com>
Committed: Tue Apr 7 16:31:28 2015 +0100
----------------------------------------------------------------------
.../messaging/rabbit/RabbitBrokerImpl.java | 2 +-
.../messaging/rabbit/RabbitSshDriver.java | 33 +++++++++++---------
2 files changed, 19 insertions(+), 16 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/58b37044/software/messaging/src/main/java/brooklyn/entity/messaging/rabbit/RabbitBrokerImpl.java
----------------------------------------------------------------------
diff --git a/software/messaging/src/main/java/brooklyn/entity/messaging/rabbit/RabbitBrokerImpl.java b/software/messaging/src/main/java/brooklyn/entity/messaging/rabbit/RabbitBrokerImpl.java
index 0184e73..fbbe384 100644
--- a/software/messaging/src/main/java/brooklyn/entity/messaging/rabbit/RabbitBrokerImpl.java
+++ b/software/messaging/src/main/java/brooklyn/entity/messaging/rabbit/RabbitBrokerImpl.java
@@ -103,7 +103,7 @@ public class RabbitBrokerImpl extends SoftwareProcessImpl implements RabbitBroke
}
public boolean getEnableManagementPlugin() {
- return getConfig(ENABLE_MANAGEMENT_PLUGIN);
+ return Boolean.TRUE.equals(getConfig(ENABLE_MANAGEMENT_PLUGIN));
}
public Integer getManagementPort() {
http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/58b37044/software/messaging/src/main/java/brooklyn/entity/messaging/rabbit/RabbitSshDriver.java
----------------------------------------------------------------------
diff --git a/software/messaging/src/main/java/brooklyn/entity/messaging/rabbit/RabbitSshDriver.java b/software/messaging/src/main/java/brooklyn/entity/messaging/rabbit/RabbitSshDriver.java
index 534edb5..c2f4a7f 100644
--- a/software/messaging/src/main/java/brooklyn/entity/messaging/rabbit/RabbitSshDriver.java
+++ b/software/messaging/src/main/java/brooklyn/entity/messaging/rabbit/RabbitSshDriver.java
@@ -18,6 +18,19 @@
*/
package brooklyn.entity.messaging.rabbit;
+import static brooklyn.util.ssh.BashCommands.*;
+import static java.lang.String.format;
+
+import java.util.List;
+import java.util.Map;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import com.google.common.base.Strings;
+import com.google.common.collect.ImmutableList;
+import com.google.common.collect.ImmutableMap;
+
import brooklyn.entity.basic.AbstractSoftwareProcessSshDriver;
import brooklyn.entity.basic.Entities;
import brooklyn.entity.basic.lifecycle.ScriptHelper;
@@ -26,17 +39,6 @@ import brooklyn.location.basic.SshMachineLocation;
import brooklyn.util.collections.MutableMap;
import brooklyn.util.net.Networking;
import brooklyn.util.os.Os;
-import com.google.common.base.Strings;
-import com.google.common.collect.ImmutableList;
-import com.google.common.collect.ImmutableMap;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.List;
-import java.util.Map;
-
-import static brooklyn.util.ssh.BashCommands.*;
-import static java.lang.String.format;
/**
* TODO javadoc
@@ -123,20 +125,21 @@ public class RabbitSshDriver extends AbstractSoftwareProcessSshDriver implements
@Override
public void customize() {
Networking.checkPortsValid(MutableMap.of("amqpPort", getAmqpPort()));
- copyTemplate(entity.getConfig(RabbitBroker.CONFIG_TEMPLATE_URL), getConfigPath() + ".config");
ScriptHelper scriptHelper = newScript(CUSTOMIZING);
scriptHelper.body.append(
format("cp -R %s/* .", getExpandedInstallDir())
);
- if (entity.getConfig(RabbitBroker.ENABLE_MANAGEMENT_PLUGIN)) {
+ if (Boolean.TRUE.equals(entity.getConfig(RabbitBroker.ENABLE_MANAGEMENT_PLUGIN))) {
scriptHelper.body.append(
"./sbin/rabbitmq-plugins enable rabbitmq_management"
);
}
-
+ scriptHelper.failOnNonZeroResultCode();
scriptHelper.execute();
+
+ copyTemplate(entity.getConfig(RabbitBroker.CONFIG_TEMPLATE_URL), getConfigPath() + ".config");
}
@Override
@@ -200,6 +203,6 @@ public class RabbitSshDriver extends AbstractSoftwareProcessSshDriver implements
}
private String getConfigPath() {
- return getInstallDir() + "/rabbitmq";
+ return getRunDir() + "/rabbitmq";
}
}