realms-wiki/install.sh

68 lines
1.8 KiB
Bash
Raw Normal View History

2014-09-02 17:29:04 +03:00
#!/bin/bash
# Provision script created for Ubuntu 14.04
2014-09-04 06:25:48 +03:00
APP_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
APP_USER="$( stat -c '%U' ${APP_DIR} )"
2014-09-02 17:29:04 +03:00
if [ -d "/vagrant" ]; then
# Control will enter here if $DIRECTORY exists.
APP_DIR="/vagrant"
APP_USER="vagrant"
fi
if [ "${APP_USER}" == "root" ]; then
echo "Installing app as root is not recommended"
echo "Username is determined by owner of application directory."
fi
2014-09-02 17:29:04 +03:00
echo "Provisioning..."
sudo apt-get update
sudo apt-get install -y software-properties-common python-software-properties
sudo add-apt-repository -y ppa:chris-lea/node.js
sudo apt-get update
sudo apt-get install -y python build-essential git libpcre3-dev \
2014-09-02 17:29:04 +03:00
python-pip python-virtualenv python-dev pkg-config curl libxml2-dev libxslt1-dev zlib1g-dev \
libffi-dev nodejs libyaml-dev
2014-09-02 17:29:04 +03:00
# Default cache is memoization
# Redis
# add-apt-repository -y chris-lea/redis-server
# add-apt-repository -y chris-lea/python-redis
# apt-get update
# apt-get install -y redis-server
# Default DB is sqlite
# Mysql
# apt-get install -y mysql-server mysql-client
# MariaDB
# apt-get install -y mariadb-server mariadb-client
# Postgres
# apt-get install -y postgresql postgresql-contrib
# Install frontend assets
sudo npm install -g bower
2014-09-09 23:19:53 +03:00
sudo -iu ${APP_USER} bower --config.cwd=${APP_DIR} --config.directory=realms/static/vendor --config.interactive=false install
2014-09-02 17:29:04 +03:00
sudo -iu ${APP_USER} virtualenv ${APP_DIR}/.venv
2014-09-02 17:29:04 +03:00
sudo -iu ${APP_USER} ${APP_DIR}/.venv/bin/pip install ${APP_DIR}
2014-09-02 17:29:04 +03:00
echo "Installing start scripts"
sudo ln -s ${APP_DIR}/.venv/bin/realms-wiki /usr/local/bin/realms-wiki
sudo chmod +x /usr/local/bin/realms-wiki
cat << EOF > /etc/init/realms-wiki.conf
description "Realms Wiki"
author "scragg@gmail.com"
setuid ${APP_USER}
setgid ${APP_USER}
start on runlevel [2345]
stop on runlevel [!2345]
respawn
exec /usr/local/bin/realms-wiki run
EOF