Add a check for honeycomb status 76/87776/1
authorMarco Platania <platania@research.att.com>
Wed, 15 May 2019 14:42:05 +0000 (10:42 -0400)
committerMarco Platania <platania@research.att.com>
Wed, 15 May 2019 14:43:53 +0000 (14:43 +0000)
Change-Id: I25330086dd8a7842d015da6b57d9812e5ecad296
Issue-ID: INT-658
Signed-off-by: Marco Platania <platania@research.att.com>
vnfs/vFW/scripts/v_packetgen_install.sh
vnfs/vFW/scripts/v_packetgen_install_arm64.sh

index a26d5dc..48d7c29 100755 (executable)
@@ -85,14 +85,17 @@ apt-get update
 apt-get install -y vpp vpp-dpdk-dkms vpp-lib vpp-dbg vpp-plugins vpp-dev
 sleep 1
 
-# Install honeycomb restart script (workaround due to honeycomb file handle leak)
-cat > /etc/cron.hourly/honeycomb <<EOF
+# Install honeycomb restart script (workaround due to honeycomb file handle leak - check every 5 minutes if honeycomb is up)
+cat > /opt/start_honeycomb.sh <<EOF
 #!/bin/bash
-VERSION=$(cat /opt/config/demo_artifacts_version.txt)
-pkill java
-/opt/honeycomb/sample-distribution-$VERSION/honeycomb &>/dev/null &disown
+PID=$(ps -u root | grep honeycomb | awk '{printf $1}')
+if [[ -z $PID ]]; then
+  VERSION=$(cat /opt/config/demo_artifacts_version.txt)
+  bash /opt/honeycomb/sample-distribution-$VERSION/honeycomb &>/dev/null &disown
+fi
 EOF
-chmod +x /etc/cron.hourly/honeycomb
+chmod +x /opt/start_honeycomb.sh
+(crontab -l 2>/dev/null; echo "*/5 * * * * /opt/start_honeycomb.sh") | crontab -
 
 # Run instantiation script
 cd /opt
index 929e536..773baa1 100755 (executable)
@@ -85,6 +85,18 @@ apt-get update
 apt-get -o Dpkg::Options::="--force-overwrite" install -y vpp vpp-lib vpp-dbg vpp-plugins vpp-dev dpdk dpdk-dev dpdk-igb-uio-dkms dpdk-rte-kni-dkms honeycomb
 sleep 1
 
+# Install honeycomb restart script (workaround due to honeycomb file handle leak - check every 5 minutes if honeycomb is up)
+cat > /opt/start_honeycomb.sh <<EOF
+#!/bin/bash
+PID=$(ps -u root | grep honeycomb | awk '{printf $1}')
+if [[ -z $PID ]]; then
+  VERSION=$(cat /opt/config/demo_artifacts_version.txt)
+  bash /opt/honeycomb/sample-distribution-$VERSION/honeycomb &>/dev/null &disown
+fi
+EOF
+chmod +x /opt/start_honeycomb.sh
+(crontab -l 2>/dev/null; echo "*/5 * * * * /opt/start_honeycomb.sh") | crontab -
+
 # Run instantiation script
 cd /opt
 mv vpacketgen.sh /etc/init.d