aboutsummaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authornemsia <nemsia@nemsia.org>2017-05-07 23:22:41 +0200
committerGitHub <noreply@github.com>2017-05-07 23:22:41 +0200
commit3d3913686526f4495cca6c0234ea06faf46b1bfe (patch)
tree7886531a5f036eceb5fdc847078fd296a4f35e67 /scripts
parentf12507fbf0e8fd46346d8c25d64796df58acf37b (diff)
downloadmastodon_ynh-3d3913686526f4495cca6c0234ea06faf46b1bfe.tar.gz
mastodon_ynh-3d3913686526f4495cca6c0234ea06faf46b1bfe.tar.bz2
mastodon_ynh-3d3913686526f4495cca6c0234ea06faf46b1bfe.zip
Sync (#11)
* [enh] Switch to tagged release * [enh] Switch to tagged release on upgrade * [fix] Restore pg dump Restore pg dump with mastodon user. * Change version on manifest * [fix] Change rm dump to ynh_secure_remove * [fix] Upgrade from 1.3.3 Fix error: Your local changes to the following files would be overwritten by merge: .babelrc .dockerignore .editorconfig .env.production.sample .gitignore .rubocop.yml .travis.yml Capfile Dockerfile README.md Vagrantfile .... * [fix] Owner of live * [fix] Reinstall dependencies on restore * Return to home * [fix] Jenkins upgrade error * Check .fonctions * Remove unneeded comment * Add apt lists to backup * Change .list name on backup * Copy Apt .lists on restore * version 1.3.3 on manifest * Remove admin instructions + TODO
Diffstat (limited to 'scripts')
-rw-r--r--scripts/backup4
-rw-r--r--scripts/remove6
-rw-r--r--scripts/restore41
-rw-r--r--scripts/upgrade6
4 files changed, 48 insertions, 9 deletions
diff --git a/scripts/backup b/scripts/backup
index bb90997..cc94aa4 100644
--- a/scripts/backup
+++ b/scripts/backup
@@ -29,10 +29,12 @@ ynh_backup "/etc/cron.d/${app}" "cron.conf"
ynh_backup "/etc/systemd/system/mastodon-web.service" "systemd_web.service"
ynh_backup "/etc/systemd/system/mastodon-sidekiq.service" "systemd_sidekiq.service"
ynh_backup "/etc/systemd/system/mastodon-streaming.service" "systemd_streaming.service"
+ynh_backup "/etc/apt/sources.list.d/backports.list" "apt_backports.list"
+ynh_backup "/etc/apt/sources.list.d/yarn.list" "apt_yarn.list"
# Backup db
sudo su - postgres <<COMMANDS
pg_dump --role=mastodon -U postgres --no-password mastodon_production > mastodon_db.sql
COMMANDS
ynh_backup "/var/lib/postgresql/${app}_db.sql" "${app}_db.sql"
-ynh_secure_remove /var/lib/postgresql/mastodon_db.sql \ No newline at end of file
+ynh_secure_remove /var/lib/postgresql/mastodon_db.sql
diff --git a/scripts/remove b/scripts/remove
index 373d028..1b2c405 100644
--- a/scripts/remove
+++ b/scripts/remove
@@ -3,6 +3,12 @@
# Exit on command errors and treat unset variables as an error
set -u
+if [ ! -e .fonctions ]; then
+ # Get file fonction if not been to the current directory
+ sudo cp ../settings/scripts/.fonctions ./.fonctions
+ sudo chmod a+rx .fonctions
+fi
+
source .fonctions # Loads the generic functions usually used in the script
# Source app helpers
source /usr/share/yunohost/helpers
diff --git a/scripts/restore b/scripts/restore
index 946a62b..3a2eeaf 100644
--- a/scripts/restore
+++ b/scripts/restore
@@ -65,6 +65,39 @@ fi
# Create user unix
sudo adduser $app --home /opt/$app --gecos "First Last,RoomNumber,WorkPhone,HomePhone" --disabled-password --disabled-login
+# Reinstall dependencies
+ # Install debian package
+ ynh_package_install imagemagick libpq-dev libxml2-dev libxslt1-dev file curl apt-transport-https
+
+ # Install redis package
+ ynh_package_install redis-server redis-tools
+
+ # Install postgresql
+ ynh_package_install postgresql postgresql-contrib
+
+ # Install Ruby
+ ynh_package_install autoconf bison build-essential libssl-dev libyaml-dev libreadline6-dev zlib1g-dev libncurses5-dev libffi-dev libgdbm3 libgdbm-dev
+
+ # Install source.list debian package backports & yarn
+ sudo cp ./apt_backports.list /etc/apt/sources.list.d/backports.list
+ sudo curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
+ sudo cp ./apt_yarn.list /etc/apt/sources.list.d/yarn.list
+ ynh_package_update
+
+ # Install debian package backports
+ sudo apt-get -t jessie-backports -y install ffmpeg
+
+ # Install de Node.js
+ pushd /opt
+ curl -sL https://deb.nodesource.com/setup_4.x | sudo bash -
+ sudo apt-get -y install nodejs
+
+ # Install Yarn
+ ynh_package_install yarn
+
+ # Return to home
+ popd
+
# Restore sources & data
sudo cp -a ./sources/. "$final_path"
@@ -74,8 +107,6 @@ sudo chown -R $app: "$final_path"
# Debug
sudo ls -alh "$final_path"
-# Change directory for create user & database postgresql
-
# Set UTF8 encoding by default
sudo su -c "psql" postgres <<< \
"update pg_database set datistemplate='false' where datname='template1';"
@@ -102,11 +133,11 @@ RAILS_ENV=production bin/bundle exec rails db:migrate
RAILS_ENV=production bin/bundle exec rails assets:precompile
RCOMMANDS
-# copy database
+# copy database dump
sudo cp $YNH_APP_BACKUP_DIR/mastodon_db.sql $final_path
sudo chmod a+r $final_path/mastodon_db.sql
-# Restore database
+# Restore database dump
sudo su - $app <<RECOMMANDS
dropdb mastodon_production
createdb mastodon_production
@@ -114,7 +145,7 @@ psql mastodon_production < $final_path/mastodon_db.sql
RECOMMANDS
# Remove dump
-sudo rm $final_path/mastodon_db.sql
+ynh_secure_remove $final_path/mastodon_db.sql
# Create symlink for ruby
sudo ln -s /opt/mastodon/.rbenv/versions/2.4.1/bin/ruby /usr/bin/ruby || true
diff --git a/scripts/upgrade b/scripts/upgrade
index b5d1b31..f19f3e7 100644
--- a/scripts/upgrade
+++ b/scripts/upgrade
@@ -62,6 +62,9 @@ RAILS_ENV=production bundle exec rails assets:precompile
RAILS_ENV=production bundle exec rails db:migrate
COMMANDS
+# Restart Mastodon
+sudo systemctl start mastodon-*.service
+
# Reload Nginx
sudo systemctl reload nginx
@@ -70,6 +73,3 @@ ynh_app_setting_set "$app" unprotected_uris "/"
# Reload SSOwat configuration
sudo yunohost app ssowatconf
-
-# Restart Mastodon
-sudo systemctl start mastodon-*.service