mirror of
https://github.com/YunoHost-Apps/weblate_ynh.git
synced 2024-10-01 13:35:04 +02:00
VADE RETRO PYTHON3! Welcome Weblate 2.20!
This commit is contained in:
parent
20281a7830
commit
0c26641287
7 changed files with 32 additions and 48 deletions
|
@ -11,7 +11,6 @@
|
||||||
is_public=1 (PUBLIC|public=1|private=0)
|
is_public=1 (PUBLIC|public=1|private=0)
|
||||||
github_account="myaccount"
|
github_account="myaccount"
|
||||||
github_token="myoauthtoken"
|
github_token="myoauthtoken"
|
||||||
password="pass"
|
|
||||||
; Checks
|
; Checks
|
||||||
pkg_linter=1
|
pkg_linter=1
|
||||||
setup_sub_dir=1
|
setup_sub_dir=1
|
||||||
|
|
|
@ -593,6 +593,8 @@ EMAIL_SEND_HTML = True
|
||||||
# Subject of emails includes site title
|
# Subject of emails includes site title
|
||||||
EMAIL_SUBJECT_PREFIX = '[{0}] '.format(SITE_TITLE)
|
EMAIL_SUBJECT_PREFIX = '[{0}] '.format(SITE_TITLE)
|
||||||
|
|
||||||
|
EMAIL_BACKEND = 'django_sendmail_backend.backends.EmailBackend'
|
||||||
|
|
||||||
# Enable remote hooks
|
# Enable remote hooks
|
||||||
ENABLE_HOOKS = True
|
ENABLE_HOOKS = True
|
||||||
|
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
[uwsgi]
|
[uwsgi]
|
||||||
plugins = python3
|
plugins = python
|
||||||
master = true
|
master = true
|
||||||
protocol = uwsgi
|
protocol = uwsgi
|
||||||
socket = /var/run/uwsgi/__APP__.socket
|
socket = /var/run/uwsgi/__APP__.socket
|
||||||
virtualenv = __FINALPATH__/venv
|
virtualenv = __FINALPATH__/venv
|
||||||
|
|
||||||
# http://uwsgi-docs.readthedocs.io/en/latest/Nginx.html#hosting-multiple-apps-in-the-same-process-aka-managing-script-name-and-path-info
|
# http://uwsgi-docs.readthedocs.io/en/latest/Nginx.html#hosting-multiple-apps-in-the-same-process-aka-managing-script-name-and-path-info
|
||||||
mount = __PATH__=__FINALPATH__/venv/lib/python3.4/site-packages/weblate/wsgi.py
|
mount = __PATH__=__FINALPATH__/venv/lib/python2.7/site-packages/weblate/wsgi.py
|
||||||
manage-script-name = true
|
manage-script-name = true
|
||||||
|
|
||||||
# Needed for OAuth/OpenID
|
# Needed for OAuth/OpenID
|
||||||
|
|
|
@ -82,6 +82,8 @@ ynh_remove_uwsgi_service () {
|
||||||
yunohost service remove "uwsgi-app@$app.socket"
|
yunohost service remove "uwsgi-app@$app.socket"
|
||||||
|
|
||||||
ynh_secure_remove "$finaluwsgiini"
|
ynh_secure_remove "$finaluwsgiini"
|
||||||
|
ynh_secure_remove "/var/run/uwsgi/$app.socket"
|
||||||
|
ynh_secure_remove "/var/log/uwsgi/app/$app"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -77,8 +77,8 @@ ynh_app_setting_set "$app" github_token "$github_token"
|
||||||
#=================================================
|
#=================================================
|
||||||
|
|
||||||
ynh_install_app_dependencies libxml2-dev libxslt-dev libfreetype6-dev \
|
ynh_install_app_dependencies libxml2-dev libxslt-dev libfreetype6-dev \
|
||||||
libjpeg-dev libz-dev libyaml-dev python3-dev python3-pip python3-virtualenv python-virtualenv \
|
libjpeg-dev libz-dev libyaml-dev python-dev python-pip python-virtualenv \
|
||||||
postgresql libpq-dev uwsgi uwsgi-plugin-python3 memcached
|
postgresql libpq-dev uwsgi uwsgi-plugin-python memcached
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
# CREATE A PostgreSQL DATABASE
|
# CREATE A PostgreSQL DATABASE
|
||||||
|
@ -177,7 +177,7 @@ ynh_add_uwsgi_service
|
||||||
#=================================================
|
#=================================================
|
||||||
# PIP INSTALLATION
|
# PIP INSTALLATION
|
||||||
#=================================================
|
#=================================================
|
||||||
virtualenv --python=python3 "${final_path}/venv"
|
virtualenv "${final_path}/venv"
|
||||||
#run source in a 'sub shell'
|
#run source in a 'sub shell'
|
||||||
(
|
(
|
||||||
set +o nounset
|
set +o nounset
|
||||||
|
@ -187,7 +187,7 @@ virtualenv --python=python3 "${final_path}/venv"
|
||||||
# prevent error: "command: 'install_requires' must be a string or list of strings containing valid project/version requirement specifiers"
|
# prevent error: "command: 'install_requires' must be a string or list of strings containing valid project/version requirement specifiers"
|
||||||
pip install --upgrade setuptools
|
pip install --upgrade setuptools
|
||||||
pip install Weblate=="$current_version"
|
pip install Weblate=="$current_version"
|
||||||
pip install pytz python-bidi PyYaML Babel pyuca pylibravatar py3dns psycopg2 python-memcached phply
|
pip install pytz python-bidi PyYaML Babel pyuca pylibravatar pydns psycopg2 python-memcached phply
|
||||||
# specific to YunoHost package:
|
# specific to YunoHost package:
|
||||||
pip install django_sendmail_backend
|
pip install django_sendmail_backend
|
||||||
)
|
)
|
||||||
|
@ -201,7 +201,7 @@ db_pwd=$(ynh_app_setting_get "$app" psqlpwd)
|
||||||
admin_mail=$(ynh_user_get_info "$admin" mail)
|
admin_mail=$(ynh_user_get_info "$admin" mail)
|
||||||
key=$(ynh_string_random)
|
key=$(ynh_string_random)
|
||||||
memc_port=$(ynh_find_port 8080)
|
memc_port=$(ynh_find_port 8080)
|
||||||
settings="$final_path/venv/lib/python3.4/site-packages/weblate/settings.py"
|
settings="$final_path/venv/lib/python2.7/site-packages/weblate/settings.py"
|
||||||
cp "../conf/settings_history/settings.$current_version.py" "$settings"
|
cp "../conf/settings_history/settings.$current_version.py" "$settings"
|
||||||
|
|
||||||
weblate_fill_settings "$settings"
|
weblate_fill_settings "$settings"
|
||||||
|
@ -238,7 +238,7 @@ ynh_replace_string "__FINALPATH__" "$final_path/" "/etc/cron.d/$app"
|
||||||
#=================================================
|
#=================================================
|
||||||
|
|
||||||
# Calculate and store the config file checksum into the app settings
|
# Calculate and store the config file checksum into the app settings
|
||||||
ynh_store_file_checksum "$final_path/venv/lib/python3.4/site-packages/weblate/settings.py"
|
ynh_store_file_checksum "$final_path/venv/lib/python2.7/site-packages/weblate/settings.py"
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
# GENERIC FINALIZATION
|
# GENERIC FINALIZATION
|
||||||
|
@ -247,7 +247,10 @@ ynh_store_file_checksum "$final_path/venv/lib/python3.4/site-packages/weblate/se
|
||||||
#=================================================
|
#=================================================
|
||||||
|
|
||||||
# Set permissions to app files
|
# Set permissions to app files
|
||||||
chown -R "$app": "$final_path"
|
chown -R "$app": "$final_path/data"
|
||||||
|
|
||||||
|
mkdir -p "$final_path/avatar-cache"
|
||||||
|
chown -R "$app": "$final_path/avatar-cache"
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
# SETUP SSOWAT
|
# SETUP SSOWAT
|
||||||
|
|
|
@ -75,8 +75,8 @@ chown -R "$app": "$final_path"
|
||||||
#=================================================
|
#=================================================
|
||||||
|
|
||||||
ynh_install_app_dependencies libxml2-dev libxslt-dev libfreetype6-dev \
|
ynh_install_app_dependencies libxml2-dev libxslt-dev libfreetype6-dev \
|
||||||
libjpeg-dev libz-dev libyaml-dev python3-dev python3-pip python3-virtualenv python-virtualenv \
|
libjpeg-dev libz-dev libyaml-dev python-dev python-pip python-virtualenv \
|
||||||
postgresql libpq-dev uwsgi uwsgi-plugin-python3 memcached
|
postgresql libpq-dev uwsgi uwsgi-plugin-python memcached
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
# RESTORE THE PostgreSQL DATABASE
|
# RESTORE THE PostgreSQL DATABASE
|
||||||
|
|
|
@ -62,15 +62,7 @@ if [ -z "$db_name" ]; then # If db_name doesn't exist, create it
|
||||||
ynh_app_setting_set "$app" db_name "$db_name"
|
ynh_app_setting_set "$app" db_name "$db_name"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# (<2.18) handle python3 migration (because of django 2.0)
|
|
||||||
if [[ -e "$final_path/venv/lib/python2.7/site-packages/weblate/settings.py" ]]
|
|
||||||
then
|
|
||||||
settings="$final_path/venv/lib/python2.7/site-packages/weblate/settings.py"
|
settings="$final_path/venv/lib/python2.7/site-packages/weblate/settings.py"
|
||||||
migrate_py2to3=true
|
|
||||||
else
|
|
||||||
settings="$final_path/venv/lib/python3.4/site-packages/weblate/settings.py"
|
|
||||||
migrate_py2to3=false
|
|
||||||
fi
|
|
||||||
|
|
||||||
# (<2.17) save memc_port if it doesn't exist
|
# (<2.17) save memc_port if it doesn't exist
|
||||||
if [[ -z "$memc_port" ]]
|
if [[ -z "$memc_port" ]]
|
||||||
|
@ -143,8 +135,8 @@ chsh --shell /bin/bash "$app"
|
||||||
#=================================================
|
#=================================================
|
||||||
|
|
||||||
ynh_install_app_dependencies libxml2-dev libxslt-dev libfreetype6-dev \
|
ynh_install_app_dependencies libxml2-dev libxslt-dev libfreetype6-dev \
|
||||||
libjpeg-dev libz-dev libyaml-dev python3-dev python3-pip python3-virtualenv python-virtualenv \
|
libjpeg-dev libz-dev libyaml-dev python-dev python-pip python-virtualenv \
|
||||||
postgresql libpq-dev uwsgi uwsgi-plugin-python3 memcached
|
postgresql libpq-dev uwsgi uwsgi-plugin-python memcached
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
# SPECIFIC SETUP uwsgi
|
# SPECIFIC SETUP uwsgi
|
||||||
|
@ -159,22 +151,6 @@ ynh_add_uwsgi_service
|
||||||
# save old settings file
|
# save old settings file
|
||||||
cp "$settings" "$final_path/settings.$previous_version.old.py"
|
cp "$settings" "$final_path/settings.$previous_version.old.py"
|
||||||
|
|
||||||
# (<2.18) handle python3 migration
|
|
||||||
if [[ "$migrate_py2to3" = true ]]
|
|
||||||
then
|
|
||||||
ynh_secure_remove "$final_path/venv"
|
|
||||||
virtualenv --python=python3 "${final_path}/venv"
|
|
||||||
set +o nounset
|
|
||||||
source "${final_path}/venv/bin/activate"
|
|
||||||
set -o nounset
|
|
||||||
pip install --upgrade pip
|
|
||||||
pip install Weblate=="$current_version"
|
|
||||||
|
|
||||||
settings="$final_path/venv/lib/python3.4/site-packages/weblate/settings.py"
|
|
||||||
cp "$final_path/settings.$previous_version.old.py" "$settings"
|
|
||||||
ynh_store_file_checksum "$settings"
|
|
||||||
fi
|
|
||||||
|
|
||||||
old_settings="./settings.$previous_version.old.py"
|
old_settings="./settings.$previous_version.old.py"
|
||||||
settings_diff="$final_path/settings.${previous_version}_${current_version}.diff"
|
settings_diff="$final_path/settings.${previous_version}_${current_version}.diff"
|
||||||
|
|
||||||
|
@ -186,9 +162,7 @@ settings_diff="$final_path/settings.${previous_version}_${current_version}.diff"
|
||||||
# prevent error: "command: 'install_requires' must be a string or list of strings containing valid project/version requirement specifiers"
|
# prevent error: "command: 'install_requires' must be a string or list of strings containing valid project/version requirement specifiers"
|
||||||
pip install --upgrade setuptools
|
pip install --upgrade setuptools
|
||||||
pip install Weblate=="$current_version"
|
pip install Weblate=="$current_version"
|
||||||
# prevent error "ImportError: No module named 'social'"
|
pip install pytz python-bidi PyYaML Babel pyuca pylibravatar pydns psycopg2 python-memcached phply
|
||||||
pip install -r "$final_path/venv/lib/python3.4/site-packages/weblate/requirements.txt"
|
|
||||||
pip install pytz python-bidi PyYaML Babel pyuca pylibravatar py3dns psycopg2 python-memcached phply
|
|
||||||
# specific to YunoHost package:
|
# specific to YunoHost package:
|
||||||
pip install django_sendmail_backend
|
pip install django_sendmail_backend
|
||||||
)
|
)
|
||||||
|
@ -261,19 +235,23 @@ fi
|
||||||
weblate loadpo --all --lang lt
|
weblate loadpo --all --lang lt
|
||||||
weblate loadpo --all --lang lv
|
weblate loadpo --all --lang lv
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "$migrate_py2to3" = true ]]
|
|
||||||
then
|
|
||||||
weblate rebuild_index --clean --all
|
|
||||||
fi
|
|
||||||
)
|
)
|
||||||
|
|
||||||
# Recalculate and store the config file checksum into the app settings
|
# Recalculate and store the config file checksum into the app settings
|
||||||
ynh_store_file_checksum "$final_path/venv/lib/python3.4/site-packages/weblate/settings.py"
|
ynh_store_file_checksum "$final_path/venv/lib/python2.7/site-packages/weblate/settings.py"
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
# GENERIC FINALIZATION
|
# GENERIC FINALIZATION
|
||||||
#=================================================
|
#=================================================
|
||||||
|
# SECURE FILES AND DIRECTORIES
|
||||||
|
#=================================================
|
||||||
|
|
||||||
|
# Set right permissions for curl installation
|
||||||
|
chown -R root:root "$final_path"
|
||||||
|
chown -R "$app": "$final_path/data"
|
||||||
|
|
||||||
|
mkdir -p "$final_path/avatar-cache"
|
||||||
|
chown -R "$app": "$final_path/avatar-cache"
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
# SETUP SSOWAT
|
# SETUP SSOWAT
|
||||||
|
|
Loading…
Reference in a new issue