1
0
Fork 0
mirror of https://github.com/YunoHost-Apps/jappix_ynh.git synced 2024-09-03 19:26:19 +02:00

[enh] Clean bash scripts and do not regen ssowat conf

This commit is contained in:
Jérôme Lebleu 2016-05-13 22:29:15 +02:00
parent 0afe4c5b3f
commit aa2a172ab1
6 changed files with 82 additions and 91 deletions

View file

@ -1,3 +1,5 @@
#!/bin/bash #!/bin/bash
VERSION="1.1.6" VERSION="1.1.6"
JAPPIX_SOURCE_URL="https://github.com/jappix/jappix/archive/${VERSION}.tar.gz"

View file

@ -1,5 +1,4 @@
#!/bin/bash #!/bin/bash
app=jappix
# causes the shell to exit if any subcommand or pipeline returns a non-zero status # causes the shell to exit if any subcommand or pipeline returns a non-zero status
set -e set -e
@ -7,7 +6,7 @@ set -e
# Source YNH helpers # Source YNH helpers
. /usr/share/yunohost/helpers . /usr/share/yunohost/helpers
app=${!#} app="jappix"
# Retrieve app settings # Retrieve app settings
domain=$(sudo yunohost app setting "$app" domain) domain=$(sudo yunohost app setting "$app" domain)

View file

@ -1,61 +1,55 @@
#!/bin/bash #!/bin/bash
set -e
source ./_common.sh source ./_common.sh
app="jappix"
# Retrieve arguments # Retrieve arguments
domain=$1 domain=$1
path=$2 path=${2%/}
name=$3 name=$3
language=$4 language=$4
# Check domain/path availability # Check domain/path availability
sudo yunohost app checkurl $domain$path -a jappix sudo yunohost app checkurl "${domain}${path}" -a "$app" \
if [[ ! $? -eq 0 ]]; then || exit 1
exit 1
fi
# Remove trailing "/" for next commands
path=${path%/}
# Retrieve sources # Retrieve sources
wget -nv -q -O jappix.tar.gz https://github.com/jappix/jappix/archive/${VERSION}.tar.gz wget -q -O jappix.tar.gz "$JAPPIX_SOURCE_URL"
# Copy files to the right place # Copy files to the right place
final_path=/var/www/jappix final_path="/var/www/${app}"
sudo mkdir -p $final_path sudo mkdir -p "${final_path}/store/conf"
sudo tar -C $final_path -xf jappix.tar.gz --strip-components 1 sudo tar -C "$final_path" -xf jappix.tar.gz --strip-components 1
sudo mkdir -p $final_path/store/conf sudo cp ../conf/*.xml "${final_path}/store/conf/"
sudo cp ../conf/*.xml $final_path/store/conf/
# Set permissions to jappix directory # Set permissions to jappix directory
sudo chown -R www-data: $final_path sudo chown -R www-data: "$final_path"
# Modify Nginx configuration file and copy it to Nginx conf directory # Set and copy NGINX configuraion
sudo sed -i "s@PATHTOCHANGE2@$path@g" ../conf/nginx.conf sudo sed -i "s@PATHTOCHANGE2@${path}@g" ../conf/nginx.conf
path=${path:-/}
sudo sed -i "s@PATHTOCHANGE@${path}@g" ../conf/nginx.conf
sudo sed -i "s@ALIASTOCHANGE@${final_path}/@g" ../conf/nginx.conf
sudo cp ../conf/nginx.conf "/etc/nginx/conf.d/${domain}.d/${app}.conf"
if [ -z "$path" ]; then # Validate language
path="/" [[ -a "${final_path}/i18n/${language}" ]] \
fi || language="en"
sudo ls $final_path/i18n/$language > /dev/null 2>&1 # Store app settings
if [ $? != 0 ]; sudo yunohost app setting "$app" name -v "$name"
then sudo yunohost app setting "$app" language -v "$language"
language="en"
fi
sudo yunohost app setting jappix name -v $name # Set Jappix configuration
sudo yunohost app setting jappix language -v $language sudo sed -i "s@PATHTOCHANGE@${path}@g" "${final_path}/store/conf/main.xml"
sudo sed -i "s@PATHTOCHANGE@${path}@g" "${final_path}/store/conf/hosts.xml"
sudo sed -i "s@DOMAINTOCHANGE@${domain}@g" "${final_path}/store/conf/main.xml"
sudo sed -i "s@CHANGELANG@${language}@g" "${final_path}/store/conf/main.xml"
sudo sed -i "s@CHANGENAME@${name}@g" "${final_path}/store/conf/main.xml"
sudo sed -i "s@DOMAINTOCHANGE@${domain}@g" "${final_path}/store/conf/hosts.xml"
sudo sed -i "s@PATHTOCHANGE@$path@g" ../conf/nginx.conf # Reload services
sudo sed -i "s@ALIASTOCHANGE@$final_path/@g" ../conf/nginx.conf
sudo cp ../conf/nginx.conf /etc/nginx/conf.d/$domain.d/jappix.conf
sudo sed -i "s@PATHTOCHANGE@$path@g" $final_path/store/conf/main.xml
sudo sed -i "s@PATHTOCHANGE@$path@g" $final_path/store/conf/hosts.xml
sudo sed -i "s@DOMAINTOCHANGE@$domain@g" $final_path/store/conf/main.xml
sudo sed -i "s@CHANGELANG@$language@g" $final_path/store/conf/main.xml
sudo sed -i "s@CHANGENAME@$name@g" $final_path/store/conf/main.xml
sudo sed -i "s@DOMAINTOCHANGE@$domain@g" $final_path/store/conf/hosts.xml
# Reload Nginx and regenerate SSOwat conf
sudo service nginx reload sudo service nginx reload
sudo yunohost app ssowatconf

View file

@ -1,8 +1,13 @@
#!/bin/bash #!/bin/bash
domain=$(sudo yunohost app setting jappix domain)
sudo rm -rf /var/www/jappix app="jappix"
sudo rm -f /etc/nginx/conf.d/$domain.d/jappix.conf
# Retrieve arguments
domain=$(sudo yunohost app setting "$app" domain)
# Remove sources and configuration
sudo rm -rf "/var/www/${app}"
sudo rm -f "/etc/nginx/conf.d/${domain}.d/${app}.conf"
# Reload services
sudo service nginx reload sudo service nginx reload
sudo yunohost app ssowatconf

View file

@ -1,22 +1,18 @@
#!/bin/bash #!/bin/bash
app=jappix
# causes the shell to exit if any subcommand or pipeline returns a non-zero status # causes the shell to exit if any subcommand or pipeline returns a non-zero status
set -e set -e
app=${!#} app="jappix"
# Retrieve arguments
backup_dir=$1
# Retrieve old app settings # Retrieve old app settings
domain=$(sudo yunohost app setting "$app" domain) domain=$(sudo yunohost app setting "$app" domain)
# Restore sources & data # Restore sources & data
sudo cp -a "./sources" "/var/www/$app" sudo cp -a ./sources "/var/www/${app}"
domain=$(sudo yunohost app setting $app domain) # Restore Nginx and YunoHost parameters
sudo cp -a $"./nginx.conf" "/etc/nginx/conf.d/$domain.d/$app.conf" sudo cp -a ./nginx.conf "/etc/nginx/conf.d/${domain}.d/${app}.conf"
# Restart webserver # Reload services
sudo service nginx reload sudo service nginx reload

View file

@ -1,55 +1,50 @@
#!/bin/bash #!/bin/bash
set -e
source ./_common.sh source ./_common.sh
# Retrieve arguments app="jappix"
domain=$(sudo yunohost app setting jappix domain)
path=$(sudo yunohost app setting jappix path)
name=$(sudo yunohost app setting jappix name)
language=$(sudo yunohost app setting jappix language)
if [[ "$name" = "" ]]; # Retrieve arguments
then domain=$(sudo yunohost app setting "$app" domain)
name="YunoJappix" path=$(sudo yunohost app setting "$app" path)
fi name=$(sudo yunohost app setting "$app" name)
if [[ "$language" = "" ]]; language=$(sudo yunohost app setting "$app" language)
then
language="en" # Set default values
fi name="${name:-YunoJappix}"
language="${language:-en}"
# Remove trailing "/" for next commands # Remove trailing "/" for next commands
path=${path%/} path=${path%/}
# Retrieve sources # Retrieve sources
wget -nv -q -O jappix.tar.gz https://github.com/jappix/jappix/archive/${VERSION}.tar.gz wget -q -O jappix.tar.gz "$JAPPIX_SOURCE_URL"
# Copy files to the right place # Copy files to the right place
final_path=/var/www/jappix final_path="/var/www/${app}"
sudo mkdir -p $final_path sudo mkdir -p "${final_path}/store/conf"
sudo tar -C $final_path -xf jappix.tar.gz --strip-components 1 sudo tar -C "$final_path" -xf jappix.tar.gz --strip-components 1
sudo mkdir -p $final_path/store/conf sudo cp ../conf/*.xml "${final_path}/store/conf/"
sudo cp ../conf/*.xml $final_path/store/conf/
# Set permissions to jappix directory # Set permissions to jappix directory
sudo chown -R www-data: $final_path sudo chown -R www-data: "$final_path"
# Modify Nginx configuration file and copy it to Nginx conf directory # Set and copy NGINX configuraion
sudo sed -i "s@PATHTOCHANGE2@$path@g" ../conf/nginx.conf sudo sed -i "s@PATHTOCHANGE2@${path}@g" ../conf/nginx.conf
path=${path:-/}
sudo sed -i "s@PATHTOCHANGE@${path}@g" ../conf/nginx.conf
sudo sed -i "s@ALIASTOCHANGE@${final_path}/@g" ../conf/nginx.conf
sudo cp ../conf/nginx.conf "/etc/nginx/conf.d/${domain}.d/${app}.conf"
if [ -z "$path" ]; then # Set Jappix configuration
path="/" sudo sed -i "s@PATHTOCHANGE@${path}@g" "${final_path}/store/conf/main.xml"
fi sudo sed -i "s@PATHTOCHANGE@${path}@g" "${final_path}/store/conf/hosts.xml"
sudo sed -i "s@DOMAINTOCHANGE@${domain}@g" "${final_path}/store/conf/main.xml"
sudo sed -i "s@CHANGELANG@${language}@g" "${final_path}/store/conf/main.xml"
sudo sed -i "s@CHANGENAME@${name}@g" "${final_path}/store/conf/main.xml"
sudo sed -i "s@DOMAINTOCHANGE@${domain}@g" "${final_path}/store/conf/hosts.xml"
sudo sed -i "s@PATHTOCHANGE@$path@g" ../conf/nginx.conf # Reload services
sudo sed -i "s@ALIASTOCHANGE@$final_path/@g" ../conf/nginx.conf
sudo cp ../conf/nginx.conf /etc/nginx/conf.d/$domain.d/jappix.conf
sudo sed -i "s@PATHTOCHANGE@$path@g" $final_path/store/conf/main.xml
sudo sed -i "s@PATHTOCHANGE@$path@g" $final_path/store/conf/hosts.xml
sudo sed -i "s@DOMAINTOCHANGE@$domain@g" $final_path/store/conf/main.xml
sudo sed -i "s@CHANGELANG@$language@g" $final_path/store/conf/main.xml
sudo sed -i "s@CHANGENAME@$name@g" $final_path/store/conf/main.xml
sudo sed -i "s@DOMAINTOCHANGE@$domain@g" $final_path/store/conf/hosts.xml
# Reload Nginx and regenerate SSOwat conf
sudo service nginx reload sudo service nginx reload
sudo yunohost app ssowatconf