Skip to content

Commit

Permalink
Merge pull request #776 from jwomeara/geowave-vagrant
Browse files Browse the repository at this point in the history
Geowave vagrant
  • Loading branch information
hobu committed Mar 4, 2015
2 parents cbe194e + 0bccf2c commit cec222c
Show file tree
Hide file tree
Showing 8 changed files with 103 additions and 17 deletions.
4 changes: 3 additions & 1 deletion Vagrantfile
Expand Up @@ -132,7 +132,9 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
"laszip.sh",
"pcl.sh",
"websocketpp.sh",
"pdal.sh",
"pdal_clone.sh",
"geowave.sh",
"pdal_install.sh",
"pgpointcloud.sh"
];
scripts.each { |script| config.vm.provision :shell, :path => "scripts/linux-install-scripts/" << script }
Expand Down
18 changes: 12 additions & 6 deletions plugins/geowave/io/GeoWaveReader.cpp
Expand Up @@ -74,6 +74,8 @@ using jace::JArray;
using jace::proxy::types::JBoolean;
#include "jace/proxy/types/JDouble.h"
using jace::proxy::types::JDouble;
#include "jace/proxy/types/JInt.h"
using jace::proxy::types::JInt;

#include "jace/proxy/java/lang/Double.h"
using jace::proxy::java::lang::Double;
Expand Down Expand Up @@ -164,11 +166,14 @@ namespace pdal

void GeoWaveReader::initialize()
{
int status = createJvm();
if (status == 0)
log()->get(LogLevel::Debug) << "JVM Creation Successful" << std::endl;
else
log()->get(LogLevel::Error) << "JVM Creation Failed: Error [" << status << "]" << std::endl;
if (!jace::isRunning())
{
int status = createJvm();
if (status == 0)
log()->get(LogLevel::Debug) << "JVM Creation Successful" << std::endl;
else
log()->get(LogLevel::Error) << "JVM Creation Failed: Error [" << status << "]" << std::endl;
}
}

void GeoWaveReader::processOptions(const Options& ops)
Expand Down Expand Up @@ -255,7 +260,8 @@ namespace pdal
Polygon geom = factory.createPolygon(coordArray);
Query query = java_new<SpatialQuery>(geom);

m_iterator = accumuloDataStore.query(index, query);
JInt count = m_count;
m_iterator = accumuloDataStore.query(index, query, count);
}

point_count_t GeoWaveReader::read(PointBuffer& buf, point_count_t count)
Expand Down
13 changes: 8 additions & 5 deletions plugins/geowave/io/GeoWaveWriter.cpp
Expand Up @@ -180,11 +180,14 @@ namespace pdal

void GeoWaveWriter::initialize()
{
int status = createJvm();
if (status == 0)
log()->get(LogLevel::Debug) << "JVM Creation Successful" << std::endl;
else
log()->get(LogLevel::Error) << "JVM Creation Failed: Error [" << status << "]" << std::endl;
if (!jace::isRunning())
{
int status = createJvm();
if (status == 0)
log()->get(LogLevel::Debug) << "JVM Creation Successful" << std::endl;
else
log()->get(LogLevel::Error) << "JVM Creation Failed: Error [" << status << "]" << std::endl;
}
}

void GeoWaveWriter::ready(PointContext ctx)
Expand Down
43 changes: 43 additions & 0 deletions scripts/linux-install-scripts/geowave
@@ -0,0 +1,43 @@
#!/bin/sh
SERVICE_NAME=geowave
PATH_TO_JAR=/home/vagrant/geowave/geowave-deploy/target/geowave-deploy-0.8.3-jace.jar
CLASS_TO_RUN=mil.nga.giat.geowave.demo.app.GeoWaveDemoApp
PID_PATH_NAME=/tmp/geowave-pid
case $1 in
start)
echo "Starting $SERVICE_NAME ..."
if [ ! -f $PID_PATH_NAME ]; then
nohup java -Dinteractive=false -cp $PATH_TO_JAR $CLASS_TO_RUN /tmp 2>> /dev/null >> /dev/null &
echo $! > $PID_PATH_NAME
echo "$SERVICE_NAME started ..."
else
echo "$SERVICE_NAME is already running ..."
fi
;;
stop)
if [ -f $PID_PATH_NAME ]; then
PID=$(cat $PID_PATH_NAME);
echo "$SERVICE_NAME stopping ..."
kill $PID;
echo "$SERVICE_NAME stopped ..."
rm $PID_PATH_NAME
else
echo "$SERVICE_NAME is not running ..."
fi
;;
restart)
if [ -f $PID_PATH_NAME ]; then
PID=$(cat $PID_PATH_NAME);
echo "$SERVICE_NAME stopping ...";
kill $PID;
echo "$SERVICE_NAME stopped ...";
rm $PID_PATH_NAME
echo "$SERVICE_NAME starting ..."
nohup java -Dinteractive=false -cp $PATH_TO_JAR $CLASS_TO_RUN /tmp 2>> /dev/null >> /dev/null &
echo $! > $PID_PATH_NAME
echo "$SERVICE_NAME started ..."
else
echo "$SERVICE_NAME is not running ..."
fi
;;
esac
18 changes: 18 additions & 0 deletions scripts/linux-install-scripts/geowave.sh
@@ -0,0 +1,18 @@
#!/bin/bash -e
# Installs GeoWave library
git clone https://github.com/ngageoint/geowave.git geowave
cd geowave
git checkout tags/v0.8.3
mvn clean package -pl geowave-deploy -am -P generate-pdal-proxies,linux-amd64-gcc-release -Dpdal.directory=/home/vagrant/pdal -DskipITs=true -DskipTests=true

# Configure library paths
chmod 777 /home/vagrant/geowave/geowave-deploy/target/dependency/jace/libjace.so
sudo ln -s /home/vagrant/geowave/geowave-deploy/target/dependency/jace/libjace.so /usr/lib/libjace.so
echo "/usr/lib/jvm/java-7-oracle/jre/lib/amd64" | sudo tee --append /etc/ld.so.conf.d/awt.conf
echo "/usr/lib/jvm/java-7-oracle/jre/lib/amd64/server" | sudo tee --append /etc/ld.so.conf.d/jvm.conf
sudo ldconfig

# Install GeoWave as a service and configure to run at startup
sudo cp /home/vagrant/pdal/scripts/linux-install-scripts/geowave /etc/init.d
sudo update-rc.d geowave defaults
sudo service geowave start
10 changes: 8 additions & 2 deletions scripts/linux-install-scripts/packages.sh
@@ -1,8 +1,11 @@
sudo apt-get update -qq
sudo apt-get install -y -q build-essential
sudo apt-get install -y software-properties-common python g++ make cmake wget git
sudo apt-get install -y python-software-properties software-properties-common python g++ make cmake wget git
sudo add-apt-repository -y ppa:ubuntugis/ubuntugis-unstable
sudo add-apt-repository -y ppa:webupd8team/java
sudo apt-get update -qq
echo debconf shared/accepted-oracle-license-v1-1 select true | sudo debconf-set-selections
echo debconf shared/accepted-oracle-license-v1-1 seen true | sudo debconf-set-selections
sudo apt-get install -y -q git \
cmake \
libgeos-dev \
Expand Down Expand Up @@ -34,7 +37,10 @@ sudo apt-get install -y -q git \
libvtk6-dev \
gcc-multilib \
g++-multilib \
libglew-dev
libglew-dev \
oracle-java7-installer \
maven \
libc6-i386



1 change: 1 addition & 0 deletions scripts/linux-install-scripts/pdal_clone.sh
@@ -0,0 +1 @@
git clone https://github.com/PDAL/PDAL.git pdal
Expand Up @@ -6,9 +6,6 @@ fi
#NUMTHREADS=1 # disable MP
export NUMTHREADS


git clone https://github.com/PDAL/PDAL.git pdal
git checkout laz-perf-vagrant -t
cd pdal
mkdir build
cd build
Expand All @@ -32,6 +29,16 @@ cmake -G "Unix Makefiles" \
-DBUILD_PLUGIN_GREYHOUND=ON \
-DLAZPERF_INCLUDE_DIR=/home/vagrant/laz-perf \
-DJSONCPP_ROOT_DIR=/usr/include/jsoncpp \
-DBUILD_PLUGIN_GEOWAVE=ON \
-DGEOWAVE_RUNTIME_JAR=/home/vagrant/geowave/geowave-deploy/target/geowave-deploy-0.8.3-jace.jar \
-DJACE_INCLUDE_DIR=/home/vagrant/geowave/geowave-deploy/target/dependency/jace/include \
-DJACE_LIBRARY=/home/vagrant/geowave/geowave-deploy/target/dependency/jace/libjace.so \
-DJACE_RUNTIME_JAR=/home/vagrant/geowave/geowave-deploy/target/dependency/jace-core-runtime-1.2.22.jar \
-DJAVA_AWT_INCLUDE_PATH=/usr/lib/jvm/java-7-oracle/include \
-DJAVA_AWT_LIBRARY=/usr/lib/jvm/java-7-oracle/jre/lib/amd64/libjawt.so \
-DJAVA_INCLUDE_PATH=/usr/lib/jvm/java-7-oracle/include \
-DJAVA_INCLUDE_PATH2=/usr/lib/jvm/java-7-oracle/include/linux \
-DJAVA_JVM_LIBRARY=/usr/lib/jvm/java-7-oracle/jre/lib/amd64/server/libjvm.so \
..

make -j $NUMTHREADS
Expand Down

0 comments on commit cec222c

Please sign in to comment.