modules/common/cassandra-common-itests/src/main/java/org/rhq/cassandra/CassandraClusterManager.java | 5 ---- modules/common/cassandra-common/src/main/java/org/rhq/cassandra/BootstrapDeployer.java | 12 +++++++++- 2 files changed, 12 insertions(+), 5 deletions(-)
New commits: commit 90c94adc0ae6c2ec10d4153603df4aa01b4e0e8b Author: John Sanda jsanda@redhat.com Date: Mon Nov 5 11:46:40 2012 -0500
CassandraClusterManager should not automatically purge cluster directory
CassandraClusterManager was purging the cluster deployment directory prior to running BootstrapDeployer which means the cluster would always get deployed or redeployed. This would be problematic if nodes are still running. In a future commit, I may add an attribute to @DeployCluster that will trigger purging the cluster directory. Prior to purging though, we need to make sure all nodes are shut down.
diff --git a/modules/common/cassandra-common-itests/src/main/java/org/rhq/cassandra/CassandraClusterManager.java b/modules/common/cassandra-common-itests/src/main/java/org/rhq/cassandra/CassandraClusterManager.java index 8702b51..f156dbd 100644 --- a/modules/common/cassandra-common-itests/src/main/java/org/rhq/cassandra/CassandraClusterManager.java +++ b/modules/common/cassandra-common-itests/src/main/java/org/rhq/cassandra/CassandraClusterManager.java @@ -37,7 +37,6 @@ import org.testng.IInvokedMethod; import org.testng.IInvokedMethodListener; import org.testng.ITestResult;
-import org.rhq.core.util.file.FileUtil; import org.rhq.core.util.stream.StreamUtil;
/** @@ -79,10 +78,7 @@ public class CassandraClusterManager implements IInvokedMethodListener { File basedir = new File("target"); File clusterDir = new File(basedir, "cassandra");
- FileUtil.purge(clusterDir, false); - int numNodes = annotation.numNodes(); - DeploymentOptions deploymentOptions = new DeploymentOptions(); deploymentOptions.setClusterDir(clusterDir.getAbsolutePath()); deploymentOptions.setNumNodes(numNodes); @@ -94,6 +90,7 @@ public class CassandraClusterManager implements IInvokedMethodListener {
BootstrapDeployer deployer = new BootstrapDeployer(); deployer.setDeploymentOptions(deploymentOptions); + deployer.deploy(); }
diff --git a/modules/common/cassandra-common/src/main/java/org/rhq/cassandra/BootstrapDeployer.java b/modules/common/cassandra-common/src/main/java/org/rhq/cassandra/BootstrapDeployer.java index afb157e..c4ea13c 100644 --- a/modules/common/cassandra-common/src/main/java/org/rhq/cassandra/BootstrapDeployer.java +++ b/modules/common/cassandra-common/src/main/java/org/rhq/cassandra/BootstrapDeployer.java @@ -78,7 +78,7 @@ public class BootstrapDeployer { File clusterDir = new File(deploymentOptions.getClusterDir()); File installedMarker = new File(clusterDir, ".installed");
- if (installedMarker.exists()) { + if (isClusterInstalled()) { return; }
@@ -144,6 +144,16 @@ public class BootstrapDeployer { } }
+ private boolean isClusterInstalled() { + File clusterDir = new File(deploymentOptions.getClusterDir()); + File installedMarker = new File(clusterDir, ".installed"); + + if (installedMarker.exists()) { + return true; + } + return false; + } + private void doLocalDeploy(Properties deployProps, File bundleDir) throws CassandraException { AntLauncher launcher = new AntLauncher(); try {
rhq-commits@lists.fedorahosted.org