summarylogtreecommitdiffstats
path: root/rocketchat-server.sh
blob: a0225276da7a1115c5979ab130d89e4b73526c07 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#!/usr/bin/env bash

BASE_DIR=/usr/share/rocketchat-server
CONFIG_FILE=/etc/rocketchat/rocketchat-server.conf
NVM_SCRIPT=/usr/share/nvm/init-nvm.sh
NODE_VERSION=0.10.46

errorout() { echo "$@" && exit 1; }

# Read rocketchat configuration.
[[ ! -r "${CONFIG_FILE}" ]] && errorout "Could not read ${CONFIG_FILE}!"
echo "Reading configuration from ${CONFIG_FILE}"
# Automatically export variables from CONFIG_FILE.
set -a
. "${CONFIG_FILE}"
set +a
[[ -z "${ROOT_URL}" ]] && errorout "No ROOT_URL found in ${CONFIG_FILE}!"

# Prepare node environment.
echo "Sourcing nvm script at ${NVM_SCRIPT}"
source "${NVM_SCRIPT}"
echo "Installing nodejs version ${NODE_VERSION} via nvm."
nvm install "${NODE_VERSION}"
nvm use "${NODE_VERSION}"

# Install dependencies.
cd "${BASE_DIR}/programs/server"
echo "Installing rocketchat npm dependencies."
npm install

# Run the rocketchat server.
echo "Starting rocketchat..."
node "${BASE_DIR}/main.js"