diff options
author | A. Wilcox <AWilcox@Wilcox-Tech.com> | 2018-06-08 02:02:24 -0500 |
---|---|---|
committer | A. Wilcox <AWilcox@Wilcox-Tech.com> | 2018-06-08 02:02:24 -0500 |
commit | fd2bb2f751c13b3c0c002b8e012810902b9da364 (patch) | |
tree | 17b2e38c966c9f96cfa568c1f572261a289590e6 /system/postgresql/pg-restore.initd | |
parent | b0a5136bf3326ba38b360be288d06f9a27f2a4d2 (diff) | |
download | packages-fd2bb2f751c13b3c0c002b8e012810902b9da364.tar.gz packages-fd2bb2f751c13b3c0c002b8e012810902b9da364.tar.bz2 packages-fd2bb2f751c13b3c0c002b8e012810902b9da364.tar.xz packages-fd2bb2f751c13b3c0c002b8e012810902b9da364.zip |
harmony -> system
Diffstat (limited to 'system/postgresql/pg-restore.initd')
-rw-r--r-- | system/postgresql/pg-restore.initd | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/system/postgresql/pg-restore.initd b/system/postgresql/pg-restore.initd new file mode 100644 index 000000000..e9fe65c19 --- /dev/null +++ b/system/postgresql/pg-restore.initd @@ -0,0 +1,36 @@ +#!/sbin/openrc-run + +extra_commands="${opts} dump restore purge" + +depend() { + need postgresql +} + +restore() { + yesno "$PGDUMP" && return 0 + ebegin "Restoring PostgreSQL $PGDUMP" + psql -U ${PG_USER:-postgres} ${PSQL_OPTS} -f "$PGDUMP" >/dev/null 2>/dev/null + local res=$? + yesno "$KEEP_DUMP" || rm -f "$PGDUMP" + eend $res + /etc/init.d/postgresql reload +} + +dump() { + yesno "$PGDUMP" && return 0 + mkdir -p "$( dirname "$PGDUMP" )" + ebegin "Saving PostgreSQL databases to $PGDUMP" + pg_dumpall -U ${PG_USER:-postgres} ${PG_DUMPALL_OPTS} -f "$PGDUMP" + eend $? +} + +purge() { + yesno "$PGDUMP" && return 0 + ebegin "Removing temporary $PGDUMP PostgreSQL backup" + rm -f "$PGDUMP" + eend $? +} + +start() { + restore +} |