2016-04-29 16:32:48 +02:00
|
|
|
#!/bin/bash
|
|
|
|
|
|
|
|
#Retrieve arguments
|
|
|
|
domain=$1
|
|
|
|
path=$2
|
|
|
|
is_public=$3
|
|
|
|
|
|
|
|
# Check domain/path availability
|
|
|
|
sudo yunohost app checkurl $domain$path -a rocketchat
|
|
|
|
if [[ ! $? -eq 0 ]]; then
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
|
|
|
|
# Save specific settings
|
|
|
|
sudo yunohost app setting rocketchat is_public -v $is_public
|
|
|
|
|
|
|
|
# Remove trailing "/" for next commands
|
|
|
|
path=${path%/}
|
|
|
|
|
|
|
|
|
|
|
|
#Install dependencies
|
|
|
|
|
|
|
|
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10
|
|
|
|
echo "deb http://repo.mongodb.org/apt/debian wheezy/mongodb-org/3.0 main" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.0.list
|
|
|
|
sudo apt-get update
|
|
|
|
sudo apt-get install -y mongodb-org curl graphicsmagick
|
|
|
|
sudo apt-get install -y npm
|
|
|
|
sudo npm install -g n
|
|
|
|
|
|
|
|
# Meteor needs at least this version of node to work.
|
|
|
|
sudo n 0.10.40
|
|
|
|
|
|
|
|
sed -i "s@PATHTOCHANGE@$path@g" ../conf/nginx.conf*
|
|
|
|
sed -i "s@ALIASTOCHANGE@$final_path/@g" ../conf/nginx.conf*
|
2016-04-29 18:16:29 +02:00
|
|
|
sed -i "s@CHANGEMETOROOTURL@$domain\/$path/@g" ../conf/Rocketchat.service
|
|
|
|
|
|
|
|
|
2016-04-29 16:32:48 +02:00
|
|
|
if [ "$path" = "" ];
|
|
|
|
then
|
|
|
|
sudo cp ../conf/nginx.conf-nosub /etc/nginx/conf.d/$domain.d/rocketchat.conf
|
|
|
|
else
|
|
|
|
sudo cp ../conf/nginx.conf /etc/nginx/conf.d/$domain.d/rocketchat.conf
|
|
|
|
fi
|
|
|
|
|
2016-04-29 18:08:30 +02:00
|
|
|
pkgdir=$(pwd)
|
2016-04-29 16:32:48 +02:00
|
|
|
|
|
|
|
# Copy files to the right place
|
|
|
|
final_path=/var/www/rocketchat
|
|
|
|
sudo mkdir -p $final_path
|
|
|
|
sudo cp -a ../sources/* $final_path
|
|
|
|
|
|
|
|
sudo cp ../conf/Rocketchat.service /etc/systemd/system/
|
|
|
|
|
|
|
|
cd $final_path/programs/server/
|
|
|
|
|
|
|
|
sudo npm install
|
|
|
|
|
|
|
|
cd $final_path/
|
|
|
|
|
|
|
|
sudo chown -R www-data: $final_path
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
sudo service nginx reload
|
|
|
|
if [ "$is_public" = "Yes" ];
|
|
|
|
then
|
|
|
|
sudo yunohost app setting rocketchat unprotected_uris -v "/"
|
|
|
|
fi
|
|
|
|
sudo systemctl start Rocketchat.service
|
|
|
|
sudo systemctl enable Rocketchat.service
|
|
|
|
|
2016-04-29 18:08:30 +02:00
|
|
|
cd $pkgdir
|
|
|
|
|
|
|
|
sudo mongo < ../conf/rocketchat_ldap.js
|
|
|
|
|
2016-04-29 16:32:48 +02:00
|
|
|
sudo yunohost app ssowatconf
|
|
|
|
|
|
|
|
|
|
|
|
|