Upgrade.sh (#281)
authorSVNET Libre <svnet@brique.svnet.fr>
Mon, 12 Feb 2018 08:43:16 +0000 (09:43 +0100)
committerChocobozzz <me@florianbigard.com>
Mon, 12 Feb 2018 08:43:16 +0000 (09:43 +0100)
* Upgrade.sh

Bash script for upgrading Instance

* add bash strict mode

* move to "scripts" folder and other fix

* Rename scirpts/upgrade.sh to scripts/upgrade.sh

* Fix SQL BACKUP path

* Fix symbolic link update

scripts/upgrade.sh [new file with mode: 0644]

diff --git a/scripts/upgrade.sh b/scripts/upgrade.sh
new file mode 100644 (file)
index 0000000..d6ee9d1
--- /dev/null
@@ -0,0 +1,34 @@
+#!/bin/bash
+
+### Note !! ###
+# On shell prompt do :
+#
+# $ su - peertube
+# $ ./upgrade.sh
+############
+
+# Stcict mode 
+set -e
+
+# Backup database
+SQL_BACKUP_PATH="/var/www/peertube/backup/sql-peertube_prod-$(date -Im).bak" 
+mkdir -p ~/backup
+pg_dump -U peertube -W -h localhost -F c peertube_prod -f "$SQL_BACKUP_PATH" 
+
+# Get and Display the Latest Version
+VERSION=$(curl -s https://api.github.com/repos/chocobozzz/peertube/releases/latest | grep tag_name | cut -d '"' -f 4)
+echo "Latest Peertube version is $VERSION"
+wget -q "https://github.com/Chocobozzz/PeerTube/releases/download/${VERSION}/peertube-${VERSION}.zip" -O ~/versions/peertube-${VERSION}.zip 
+cd ~/versions
+unzip -o peertube-${VERSION}.zip
+rm -f peertube-${VERSION}.zip
+
+# Upgrade Scripts
+rm -rf ~/peertube-latest
+ln -s ~/versions/peertube-${VERSION} ~/peertube-latest
+cd  ~/peertube-latest
+yarn install --production --pure-lockfile 
+cp  ~/peertube-latest/config/default.yaml ~/config/default.yaml
+diff  ~/peertube-latest/config/production.yaml.example ~/config/production.yaml 
+
+exit 0