2016-09-09 11:07:28 +02:00
|
|
|
#!/bin/bash
|
|
|
|
|
|
|
|
# Exit on command errors and treat unset variables as an error
|
|
|
|
set -eu
|
|
|
|
|
|
|
|
app=$YNH_APP_INSTANCE_NAME
|
|
|
|
|
|
|
|
# Retrieve arguments
|
|
|
|
domain=$YNH_APP_ARG_DOMAIN
|
|
|
|
path=$YNH_APP_ARG_PATH
|
|
|
|
|
|
|
|
# Source YunoHost helpers
|
|
|
|
source /usr/share/yunohost/helpers
|
|
|
|
|
|
|
|
# Check domain/path availability
|
|
|
|
sudo yunohost app checkurl "${domain}${path}" -a "$app" \
|
|
|
|
|| ynh_die "Path not available: ${domain}${path}"
|
|
|
|
|
|
|
|
# Install dependencies
|
|
|
|
sudo apt-get update
|
|
|
|
sudo apt-get install nodejs-legacy npm python-weboob-core python-imaging -y -qq
|
|
|
|
|
|
|
|
# Build the app
|
|
|
|
src_path=/home/yunohost.app/$app
|
|
|
|
sudo git clone https://framagit.org/bnjbvr/kresus.git $src_path
|
2017-07-17 22:32:07 +02:00
|
|
|
sudo mkdir -p $src_path $src_path/node_modules
|
2016-09-09 11:07:28 +02:00
|
|
|
sudo npm install --prefix $src_path $src_path
|
2017-07-18 02:11:44 +02:00
|
|
|
sudo sh -c "cd $src_path && ./scripts/build.sh"
|
2016-09-09 11:07:28 +02:00
|
|
|
|
|
|
|
# Modify Nginx configuration file and copy it to Nginx conf directory
|
|
|
|
nginx_conf=../conf/nginx.conf
|
|
|
|
sed -i "s@YNH_WWW_PATH@$path@g" $nginx_conf
|
|
|
|
sudo cp $nginx_conf /etc/nginx/conf.d/$domain.d/$app.conf
|
|
|
|
|
|
|
|
# Setup service
|
|
|
|
systemd_service=../conf/kresus.service
|
|
|
|
sed -i "s@APP_TO_CHANGE@$app@g" $systemd_service
|
|
|
|
sudo cp $systemd_service /etc/systemd/system/$app.service
|
|
|
|
systemctl enable $app
|
|
|
|
systemctl start $app
|
|
|
|
|
|
|
|
# Reload services
|
|
|
|
sudo service nginx reload
|