Updated Branches: refs/heads/master 72d7e18d6 -> ba1fe838b
Moved health publisher execution to event subscriber client Project: http://git-wip-us.apache.org/repos/asf/incubator-stratos/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-stratos/commit/ba1fe838 Tree: http://git-wip-us.apache.org/repos/asf/incubator-stratos/tree/ba1fe838 Diff: http://git-wip-us.apache.org/repos/asf/incubator-stratos/diff/ba1fe838 Branch: refs/heads/master Commit: ba1fe838b936c296a1cdb7f9c02b9b9532333658 Parents: 72d7e18 Author: Sajith Kariyawasam <[email protected]> Authored: Thu Dec 19 11:55:03 2013 +0530 Committer: Sajith Kariyawasam <[email protected]> Committed: Thu Dec 19 11:55:03 2013 +0530 ---------------------------------------------------------------------- .../adc/mgt/utils/PersistenceManager.java | 5 +++ .../cartridge-agent/ec2/php/cartridge-agent.sh | 12 ++--- .../subscriber/CartridgeAgentConstants.java | 4 ++ .../cartridge/agent/event/subscriber/Main.java | 46 ++++++++++++++++++-- .../puppet/etc/puppet/files/cartridge-agent.sh | 12 ++--- 5 files changed, 64 insertions(+), 15 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/ba1fe838/components/org.apache.stratos.adc.mgt/src/main/java/org/apache/stratos/adc/mgt/utils/PersistenceManager.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.adc.mgt/src/main/java/org/apache/stratos/adc/mgt/utils/PersistenceManager.java b/components/org.apache.stratos.adc.mgt/src/main/java/org/apache/stratos/adc/mgt/utils/PersistenceManager.java index e96e8db..b563c74 100644 --- a/components/org.apache.stratos.adc.mgt/src/main/java/org/apache/stratos/adc/mgt/utils/PersistenceManager.java +++ b/components/org.apache.stratos.adc.mgt/src/main/java/org/apache/stratos/adc/mgt/utils/PersistenceManager.java @@ -881,6 +881,11 @@ public class PersistenceManager { } } + + + public static Service getServiceFromCartridgeType(String cartridgeType) { + return null; + } http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/ba1fe838/products/cartridge-agent/modules/cartridge-agent/ec2/php/cartridge-agent.sh ---------------------------------------------------------------------- diff --git a/products/cartridge-agent/modules/cartridge-agent/ec2/php/cartridge-agent.sh b/products/cartridge-agent/modules/cartridge-agent/ec2/php/cartridge-agent.sh index 396f0be..7064af8 100755 --- a/products/cartridge-agent/modules/cartridge-agent/ec2/php/cartridge-agent.sh +++ b/products/cartridge-agent/modules/cartridge-agent/ec2/php/cartridge-agent.sh @@ -77,10 +77,10 @@ sh event-subscriber.sh & echo "Event subscribed" | tee -a $LOG popd - -pushd $health_publisher_path/bin -echo "Executing: health-publisher.sh" -sh health-publisher.sh $MEMBER_ID $CEP_IP $CEP_PORT $PORTS $CLUSTER_ID $NETWORK_PARTITION_ID -echo "Health stat published" | tee -a $LOG -popd +#Health publisher is started inside event subscriber +#pushd $health_publisher_path/bin +#echo "Executing: health-publisher.sh" +#sh health-publisher.sh $MEMBER_ID $CEP_IP $CEP_PORT $PORTS $CLUSTER_ID $NETWORK_PARTITION_ID +#echo "Health stat published" | tee -a $LOG +#popd http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/ba1fe838/products/cartridge-agent/modules/event-subscriber/src/main/java/org/apache/stratos/cartridge/agent/event/subscriber/CartridgeAgentConstants.java ---------------------------------------------------------------------- diff --git a/products/cartridge-agent/modules/event-subscriber/src/main/java/org/apache/stratos/cartridge/agent/event/subscriber/CartridgeAgentConstants.java b/products/cartridge-agent/modules/event-subscriber/src/main/java/org/apache/stratos/cartridge/agent/event/subscriber/CartridgeAgentConstants.java index 383fcc7..8a1e7d3 100644 --- a/products/cartridge-agent/modules/event-subscriber/src/main/java/org/apache/stratos/cartridge/agent/event/subscriber/CartridgeAgentConstants.java +++ b/products/cartridge-agent/modules/event-subscriber/src/main/java/org/apache/stratos/cartridge/agent/event/subscriber/CartridgeAgentConstants.java @@ -34,4 +34,8 @@ public class CartridgeAgentConstants implements Serializable{ public static final String PARTITION_ID = "PARTITION_ID"; public static final String MEMBER_ID = "MEMBER_ID"; public static final String PORTS = "PORTS"; + public static final String CEP_PORT = "CEP_PORT"; + public static final String CEP_IP = "CEP_IP"; + public static final String MB_PORT = "MB_PORT"; + public static final String MB_IP = "MB_IP"; } http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/ba1fe838/products/cartridge-agent/modules/event-subscriber/src/main/java/org/apache/stratos/cartridge/agent/event/subscriber/Main.java ---------------------------------------------------------------------- diff --git a/products/cartridge-agent/modules/event-subscriber/src/main/java/org/apache/stratos/cartridge/agent/event/subscriber/Main.java b/products/cartridge-agent/modules/event-subscriber/src/main/java/org/apache/stratos/cartridge/agent/event/subscriber/Main.java index ba6492b..75f94c4 100644 --- a/products/cartridge-agent/modules/event-subscriber/src/main/java/org/apache/stratos/cartridge/agent/event/subscriber/Main.java +++ b/products/cartridge-agent/modules/event-subscriber/src/main/java/org/apache/stratos/cartridge/agent/event/subscriber/Main.java @@ -78,10 +78,13 @@ public class Main { String repoURL = LaunchParamsUtil .readParamValueFromPayload("GIT_REPO"); + + log.info("waiting for all ports to be active"); + waitForPortsTobeActive(); + log.info("All ports active"); + if ("null".equals(repoURL) || repoURL == null) { log.info("No git repo found for this cartridge"); - waitForPortsTobeActive(); - log.info("All ports active"); InstanceActivatedEvent instanceActivatedEvent = new InstanceActivatedEvent( LaunchParamsUtil .readParamValueFromPayload(CartridgeAgentConstants.SERVICE_NAME), @@ -103,10 +106,47 @@ public class Main { // TODO -- start this thread only if this node configured as a commit true node ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1); scheduler.scheduleWithFixedDelay(new RepositoryFileListener(), 0, 10, TimeUnit.SECONDS); + + // Invoke Health publisher + //pushd $health_publisher_path/bin + //echo "Executing: health-publisher.sh" + //sh health-publisher.sh $MEMBER_ID $CEP_IP $CEP_PORT $PORTS $CLUSTER_ID + //echo "Health stat published" | tee -a $LOG + //popd + + // /opt/apache-stratos-cartridge-agent/health-publisher/bin/health-publisher.sh + + log.info("Executing health publisher .."); + Process proc; + try { + + String command = + "/opt/apache-stratos-cartridge-agent/health-publisher/bin/health-publisher.sh "+ + LaunchParamsUtil.readParamValueFromPayload(CartridgeAgentConstants.MEMBER_ID) + " " + + LaunchParamsUtil.readParamValueFromPayload(CartridgeAgentConstants.CEP_IP) + " " + + LaunchParamsUtil.readParamValueFromPayload(CartridgeAgentConstants.CEP_PORT) + " " + + getPorts(LaunchParamsUtil.readParamValueFromPayload(CartridgeAgentConstants.PORTS)) + " " + + " /"; + proc = Runtime.getRuntime().exec(command); + log.info("executing health publisher command.. :" + command); + proc.waitFor(); + log.info("Health publisher executed"); + }catch (Exception e) { + log.error(" Exception occurred in executing health publisher", e); + } + } - private static void waitForPortsTobeActive() { + /* + * Return ports split by comma + */ + private static String getPorts(String readParamValueFromPayload) { + String portString = readParamValueFromPayload.trim(); + return portString.replace("|", ","); + } + + private static void waitForPortsTobeActive() { long portCheckTimeOut = 1000 * 60 * 10; String portCheckTimeOutStr = System.getProperty("port.check.timeout"); if (StringUtils.isNotBlank(portCheckTimeOutStr)) { http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/ba1fe838/tools/puppet/etc/puppet/files/cartridge-agent.sh ---------------------------------------------------------------------- diff --git a/tools/puppet/etc/puppet/files/cartridge-agent.sh b/tools/puppet/etc/puppet/files/cartridge-agent.sh index 86cc982..a5429aa 100755 --- a/tools/puppet/etc/puppet/files/cartridge-agent.sh +++ b/tools/puppet/etc/puppet/files/cartridge-agent.sh @@ -100,9 +100,9 @@ sh event-subscriber.sh & echo "Event subscribed" | tee -a $LOG popd - -pushd $health_publisher_path/bin -echo "Executing: health-publisher.sh" -sh health-publisher.sh $MEMBER_ID $CEP_IP $CEP_PORT $PORTS $CLUSTER_ID -echo "Health stat published" | tee -a $LOG -popd +#Health publisher is started inside event subscriber +#pushd $health_publisher_path/bin +#echo "Executing: health-publisher.sh" +#sh health-publisher.sh $MEMBER_ID $CEP_IP $CEP_PORT $PORTS $CLUSTER_ID +#echo "Health stat published" | tee -a $LOG +#popd
