blob: dabad5d917a059ee444120b00f6a964b0f873cae [file] [log] [blame]
#!/usr/bin/env bash
#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# Convenience script for stopping all default dependent services in a single
# node scenario.
# Figure out where PredictionIO is installed
export PIO_HOME="$(cd `dirname $0`/..; pwd)"
. ${PIO_HOME}/bin/load-pio-env.sh
SOURCE_TYPE=$PIO_STORAGE_REPOSITORIES_METADATA_SOURCE
SOURCE_TYPE=$SOURCE_TYPE$PIO_STORAGE_REPOSITORIES_EVENTDATA_SOURCE
SOURCE_TYPE=$SOURCE_TYPE$PIO_STORAGE_REPOSITORIES_MODELDATA_SOURCE
# PredictionIO Event Server
echo "Stopping PredictionIO Event Server..."
PIDFILE=${PIO_HOME}/eventserver.pid
if [ -e ${PIDFILE} ]; then
cat ${PIDFILE} | xargs kill
rm ${PIDFILE}
fi
# HBase
if [ `echo $SOURCE_TYPE | grep -i hbase | wc -l` != 0 ] ; then
echo "Stopping HBase..."
if [ -n "$PIO_STORAGE_SOURCES_HBASE_HOME" ]; then
$PIO_STORAGE_SOURCES_HBASE_HOME/bin/stop-hbase.sh
fi
fi
# Elasticsearch
if [ `echo $SOURCE_TYPE | grep -i elasticsearch | wc -l` != 0 ] ; then
echo "Stopping Elasticsearch..."
PIDFILE=${PIO_HOME}/es.pid
if [ -e ${PIDFILE} ]; then
cat ${PIDFILE} | xargs kill
rm ${PIDFILE}
fi
fi
#PGSQL
if [ `echo $SOURCE_TYPE | grep -i pgsql | wc -l` != 0 ] ; then
if [ -n "$PIO_STORAGE_SOURCES_PGSQL_TYPE" ]; then
OS=`uname`
if [[ "$OS" = "Darwin" ]]; then
pg_cmd=`which pg_ctl`
if [[ "$pg_cmd" != "" ]]; then
pg_ctl -D /usr/local/var/postgres stop -s -m fast
fi
elif [[ "$OS" = "Linux" ]]; then
sudo service postgresql stop
else
echo -e "\033[1;31mYour OS $OS is not yet supported for automatic postgresql startup:(\033[0m"
echo -e "\033[1;31mPlease do a manual shutdown!\033[0m"
exit 1
fi
fi
fi