aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoryalh76 <yalh@yahoo.com>2020-02-23 18:44:50 +0100
committeryalh76 <yalh@yahoo.com>2020-02-23 18:44:50 +0100
commit6ff11dacb201a08506b345953aa7b9bd39eeacf5 (patch)
treeec12b2eca75ba3701644f50fd04d16a0c4f49528
parentea70a2cd4f17daecf49e2b414c0e95e4385cf1a6 (diff)
downloadmastodon_ynh-6ff11dacb201a08506b345953aa7b9bd39eeacf5.tar.gz
mastodon_ynh-6ff11dacb201a08506b345953aa7b9bd39eeacf5.tar.bz2
mastodon_ynh-6ff11dacb201a08506b345953aa7b9bd39eeacf5.zip
Apply example_ynh
-rw-r--r--README.md1
-rw-r--r--README_fr.md1
-rw-r--r--conf/nginx.conf96
-rw-r--r--scripts/_common.sh3
-rw-r--r--scripts/backup2
-rw-r--r--scripts/install7
-rw-r--r--scripts/remove10
-rw-r--r--scripts/restore2
-rw-r--r--scripts/upgrade7
9 files changed, 71 insertions, 58 deletions
diff --git a/README.md b/README.md
index ec0e046..dfce394 100644
--- a/README.md
+++ b/README.md
@@ -57,7 +57,6 @@ $ screen -r
* x86-64b - [![Build Status](https://ci-apps.yunohost.org/ci/logs/mastodon%20%28Apps%29.svg)](https://ci-apps.yunohost.org/ci/apps/mastodon/)
* ARMv8-A - [![Build Status](https://ci-apps-arm.yunohost.org/ci/logs/mastodon%20%28Apps%29.svg)](https://ci-apps-arm.yunohost.org/ci/apps/mastodon/)
-* Jessie x86-64b - [![Build Status](https://ci-stretch.nohost.me/ci/logs/mastodon%20%28Apps%29.svg)](https://ci-stretch.nohost.me/ci/apps/mastodon/)
## Links
diff --git a/README_fr.md b/README_fr.md
index 6bea9d1..2092750 100644
--- a/README_fr.md
+++ b/README_fr.md
@@ -57,7 +57,6 @@ L'utilisateur admin est crée automatiquement comme: user@domain.tld
* x86-64b - [![Build Status](https://ci-apps.yunohost.org/ci/logs/mastodon%20%28Apps%29.svg)](https://ci-apps.yunohost.org/ci/apps/mastodon/)
* ARMv8-A - [![Build Status](https://ci-apps-arm.yunohost.org/ci/logs/mastodon%20%28Apps%29.svg)](https://ci-apps-arm.yunohost.org/ci/apps/mastodon/)
-* Jessie x86-64b - [![Build Status](https://ci-stretch.nohost.me/ci/logs/mastodon%20%28Apps%29.svg)](https://ci-stretch.nohost.me/ci/apps/mastodon/)
## Links
diff --git a/conf/nginx.conf b/conf/nginx.conf
index 190c650..7fa7b87 100644
--- a/conf/nginx.conf
+++ b/conf/nginx.conf
@@ -6,70 +6,70 @@ root __FINALPATH__/live/public;
location / {
- if ($scheme = http) {
- rewrite ^ https://$server_name$request_uri? permanent;
- }
+ # Force usage of https
+ if ($scheme = http) {
+ rewrite ^ https://$server_name$request_uri? permanent;
+ }
- proxy_set_header Accept-Encoding "";
- try_files $uri @proxy;
+ proxy_set_header Accept-Encoding "";
+ try_files $uri @proxy;
- # Include SSOWAT user panel.
- include conf.d/yunohost_panel.conf.inc;
+ # Include SSOWAT user panel.
+ include conf.d/yunohost_panel.conf.inc;
}
location ~ ^/(emoji|packs|system/accounts/avatars|system/media_attachments/files) {
- add_header Cache-Control "public, max-age=31536000, immutable";
- add_header Strict-Transport-Security "max-age=31536000";
- try_files $uri @proxy;
+ add_header Cache-Control "public, max-age=31536000, immutable";
+ add_header Strict-Transport-Security "max-age=31536000";
+ try_files $uri @proxy;
}
location /sw.js {
- add_header Cache-Control "public, max-age=0";
- add_header Strict-Transport-Security "max-age=31536000";
- try_files $uri @proxy;
+ add_header Cache-Control "public, max-age=0";
+ add_header Strict-Transport-Security "max-age=31536000";
+ try_files $uri @proxy;
}
location @proxy {
- proxy_set_header Host $host;
- proxy_set_header X-Real-IP $remote_addr;
- proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
- proxy_set_header X-Forwarded-Proto https;
- proxy_set_header Proxy "";
- proxy_pass_header Server;
+ proxy_set_header Host $host;
+ proxy_set_header X-Real-IP $remote_addr;
+ proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
+ proxy_set_header X-Forwarded-Proto https;
+ proxy_set_header Proxy "";
+ proxy_pass_header Server;
- proxy_pass http://127.0.0.1:3000;
- proxy_buffering on;
- proxy_redirect off;
- proxy_http_version 1.1;
- proxy_set_header Upgrade $http_upgrade;
- proxy_set_header Connection "upgrade";
+ proxy_pass http://127.0.0.1:3000;
+ proxy_buffering on;
+ proxy_redirect off;
+ proxy_http_version 1.1;
+ proxy_set_header Upgrade $http_upgrade;
+ proxy_set_header Connection "upgrade";
- #proxy_cache CACHE;
- proxy_cache_valid 200 7d;
- proxy_cache_valid 410 24h;
- proxy_cache_use_stale error timeout updating http_500 http_502 http_503 http_504;
- add_header X-Cached $upstream_cache_status;
- add_header Strict-Transport-Security "max-age=31536000";
+ #proxy_cache CACHE;
+ proxy_cache_valid 200 7d;
+ proxy_cache_valid 410 24h;
+ proxy_cache_use_stale error timeout updating http_500 http_502 http_503 http_504;
+ add_header X-Cached $upstream_cache_status;
+ add_header Strict-Transport-Security "max-age=31536000";
- tcp_nodelay on;
+ tcp_nodelay on;
}
location /api/v1/streaming {
- proxy_set_header Host $host;
- proxy_set_header X-Real-IP $remote_addr;
- proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
- proxy_set_header X-Forwarded-Proto https;
- proxy_set_header Proxy "";
-
- proxy_pass http://127.0.0.1:4000;
- proxy_buffering off;
- proxy_redirect off;
- proxy_http_version 1.1;
- proxy_set_header Upgrade $http_upgrade;
- proxy_set_header Connection "upgrade";
-
- tcp_nodelay on;
-}
+ proxy_set_header Host $host;
+ proxy_set_header X-Real-IP $remote_addr;
+ proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
+ proxy_set_header X-Forwarded-Proto https;
+ proxy_set_header Proxy "";
+
+ proxy_pass http://127.0.0.1:4000;
+ proxy_buffering off;
+ proxy_redirect off;
+ proxy_http_version 1.1;
+ proxy_set_header Upgrade $http_upgrade;
+ proxy_set_header Connection "upgrade";
+ tcp_nodelay on;
+}
-error_page 500 501 502 503 504 /500.html; \ No newline at end of file
+error_page 500 501 502 503 504 /500.html;
diff --git a/scripts/_common.sh b/scripts/_common.sh
index 904553d..029d4ff 100644
--- a/scripts/_common.sh
+++ b/scripts/_common.sh
@@ -5,8 +5,7 @@
#=================================================
# dependencies used by the app
-#pkg_dependencies="imagemagick ffmpeg libpq-dev libxml2-dev libxslt1-dev file git-core g++ libprotobuf-dev protobuf-compiler pkg-config nodejs gcc autoconf bison build-essential libssl-dev libyaml-dev libreadline6-dev zlib1g-dev libncurses5-dev libffi-dev libgdbm5 libgdbm-dev nginx redis-server redis-tools postgresql postgresql-contrib certbot python-certbot-nginx yarn libidn11-dev libicu-dev libjemalloc-dev"
- pkg_dependencies="imagemagick ffmpeg libpq-dev libxml2-dev libxslt1-dev file git-core g++ libprotobuf-dev protobuf-compiler pkg-config gcc autoconf bison build-essential libssl-dev libyaml-dev libreadline6-dev zlib1g-dev libncurses5-dev libffi-dev libgdbm3 libgdbm-dev redis-server redis-tools postgresql postgresql-contrib libidn11-dev libicu-dev libjemalloc-dev curl apt-transport-https"
+pkg_dependencies="imagemagick ffmpeg libpq-dev libxml2-dev libxslt1-dev file git-core g++ libprotobuf-dev protobuf-compiler pkg-config gcc autoconf bison build-essential libssl-dev libyaml-dev libreadline6-dev zlib1g-dev libncurses5-dev libffi-dev libgdbm3 libgdbm-dev redis-server redis-tools postgresql postgresql-contrib libidn11-dev libicu-dev libjemalloc-dev curl apt-transport-https"
#=================================================
# PERSONAL HELPERS
diff --git a/scripts/backup b/scripts/backup
index 62ac387..61ad5f4 100644
--- a/scripts/backup
+++ b/scripts/backup
@@ -13,6 +13,7 @@ source /usr/share/yunohost/helpers
#=================================================
# MANAGE SCRIPT FAILURE
#=================================================
+ynh_script_progression --message="Managing script failure..." --weight=1
ynh_clean_setup () {
ynh_clean_check_starting
@@ -77,6 +78,7 @@ ynh_backup --src_path="/etc/systemd/system/$app-streaming.service"
#=================================================
# BACKUP A CRON FILE
#=================================================
+ynh_script_progression --message="Backing up a cron file..." --weight=1
ynh_backup --src_path="/etc/cron.d/$app"
diff --git a/scripts/install b/scripts/install
index 58f0caa..f769f03 100644
--- a/scripts/install
+++ b/scripts/install
@@ -17,6 +17,7 @@ source /usr/share/yunohost/helpers
#=================================================
# MANAGE SCRIPT FAILURE
#=================================================
+ynh_script_progression --message="Managing script failure..." --weight=1
ynh_clean_setup () {
ynh_clean_check_starting
@@ -27,6 +28,7 @@ ynh_abort_if_errors
#=================================================
# RETRIEVE ARGUMENTS FROM THE MANIFEST
#=================================================
+ynh_script_progression --message="Retrieving arguments from the manifest..." --weight=1
domain=$YNH_APP_ARG_DOMAIN
path_url="/"
@@ -67,7 +69,7 @@ ynh_app_setting_set --app=$app --key=language --value=$language
#=================================================
ynh_script_progression --message="Configuring firewall..." --weight=1
-# Find a free port
+# Find an available port
port_web=$(ynh_find_port --port=3000)
port_stream=$(ynh_find_port --port=4000)
# Open this port
@@ -91,7 +93,7 @@ ynh_script_progression --message="Creating a PostgreSQL database..." --weight=5
# Create postgresql database
db_name="${app}_production"
db_user=$app
-db_pwd=$(ynh_string_random 30)
+db_pwd=$(ynh_string_random --length30)
ynh_app_setting_set --app=$app --key=db_name --value=$db_name
ynh_app_setting_set --app=$app --key=db_pwd --value=$db_pwd
ynh_psql_test_if_first_run
@@ -129,6 +131,7 @@ ynh_system_user_create --username=$app --home_dir=$final_path
#=================================================
# ADD SWAP IF NEEDED
#=================================================
+ynh_script_progression --message="Adding swap is needed..." --weight=4
total_memory=$(ynh_check_ram)
total_swap=$(ynh_check_ram --only_swap)
diff --git a/scripts/remove b/scripts/remove
index 3db3310..b88da99 100644
--- a/scripts/remove
+++ b/scripts/remove
@@ -27,23 +27,24 @@ final_path=$(ynh_app_setting_get --app=$app --key=final_path)
#=================================================
# STANDARD REMOVE
#=================================================
-# REMOVE SERVICE FROM ADMIN PANEL
+# REMOVE SERVICE INTEGRATION IN YUNOHOST
#=================================================
+ynh_script_progression --message="Removing service integration in YunoHost..." --weight=2
# Remove a service from the admin panel, added by `yunohost service add`
-if yunohost service status "$app-web" >/dev/null 2>&1
+if ynh_exec_warn_less yunohost service status "$app-web" >/dev/null
then
ynh_script_progression --message="Removing $app-web service..." --weight=2
yunohost service remove "$app-web"
fi
-if yunohost service status "$app-sidekiq" >/dev/null 2>&1
+if ynh_exec_warn_less yunohost service status "$app-sidekiq" >/dev/null
then
ynh_script_progression --message="Removing $app-sidekiq service..." --weight=2
yunohost service remove "$app-sidekiq"
fi
-if yunohost service status "$app-streaming" >/dev/null 2>&1
+if ynh_exec_warn_less yunohost service status "$app-streaming" >/dev/null
then
ynh_script_progression --message="Removing $app-streaming service..." --weight=2
yunohost service remove "$app-streaming"
@@ -99,6 +100,7 @@ ynh_remove_nginx_config
#=================================================
# REMOVE THE CRON FILE
#=================================================
+ynh_script_progression --message="Removing the cron file..." --weight=2
# Remove a cron file
ynh_secure_remove --file="/etc/cron.d/$app"
diff --git a/scripts/restore b/scripts/restore
index 1985b26..a45925e 100644
--- a/scripts/restore
+++ b/scripts/restore
@@ -17,6 +17,7 @@ source /usr/share/yunohost/helpers
#=================================================
# MANAGE SCRIPT FAILURE
#=================================================
+ynh_script_progression --message="Managing script failure..." --weight=2
ynh_clean_setup () {
ynh_clean_check_starting
@@ -85,6 +86,7 @@ chown -R $app: $final_path
#=================================================
# ADD SWAP IF NEEDED
#=================================================
+ynh_script_progression --message="Adding swap if needed..." --weight=4
total_memory=$(ynh_check_ram)
total_swap=$(ynh_check_ram --only_swap)
diff --git a/scripts/upgrade b/scripts/upgrade
index 9cfe1cc..32426a2 100644
--- a/scripts/upgrade
+++ b/scripts/upgrade
@@ -42,6 +42,7 @@ vapid_public_key=$(ynh_app_setting_get --app=$app --key=vapid_public_key)
#=================================================
# CHECK VERSION
#=================================================
+ynh_script_progression --message="Checking version..." --weight=1
upgrade_type=$(ynh_check_app_version_changed)
@@ -147,6 +148,11 @@ ynh_abort_if_errors
#=================================================
# Normalize the URL path syntax
+# N.B. : this is for app installations before YunoHost 2.7
+# where this value might be something like /foo/ or foo/
+# instead of /foo ....
+# If nobody installed your app before 2.7, then you may
+# safely remove this line
path_url=$(ynh_normalize_url_path --path_url=$path_url)
#=================================================
@@ -218,6 +224,7 @@ ynh_system_user_create --username=$app --home_dir=$final_path
#=================================================
# ADD SWAP IF NEEDED
#=================================================
+ynh_script_progression --message="Adding swap if needed..." --weight=7
total_memory=$(ynh_check_ram)
total_swap=$(ynh_check_ram --only_swap)