aboutsummaryrefslogtreecommitdiff
path: root/ansible/roles/mediawiki/files/bin/mw-dump-db
diff options
context:
space:
mode:
Diffstat (limited to 'ansible/roles/mediawiki/files/bin/mw-dump-db')
-rw-r--r--ansible/roles/mediawiki/files/bin/mw-dump-db12
1 files changed, 12 insertions, 0 deletions
diff --git a/ansible/roles/mediawiki/files/bin/mw-dump-db b/ansible/roles/mediawiki/files/bin/mw-dump-db
new file mode 100644
index 0000000..5a6699a
--- /dev/null
+++ b/ansible/roles/mediawiki/files/bin/mw-dump-db
@@ -0,0 +1,12 @@
+#!/bin/bash
+
+set -euo pipefail
+
+export PGHOST=$(sed -n 's,^.wgDBserver.*"\([^"]*\)".*,\1,p' /etc/mediawiki/LocalSettings.php)
+export PGUDATABASE=$(sed -n 's,^.wgDBname.*"\([^"]*\)".*,\1,p' /etc/mediawiki/LocalSettings.php)
+export PGUSER=$(sed -n 's,^.wgDBuser.*"\([^"]*\)".*,\1,p' /etc/mediawiki/LocalSettings.php)
+export PGPASSWORD=$(sed -n 's,^.wgDBpassword.*"\([^"]*\)".*,\1,p' /etc/mediawiki/LocalSettings.php)
+export PGPORT=$(sed -n 's,^.wgDBport.*"\([^"]*\)".*,\1,p' /etc/mediawiki/LocalSettings.php)
+
+rm -rf /opt/mediawiki/backup/db
+exec pg_dump -b --format directory -f /opt/mediawiki/backup/db