#!/bin/bash # This file is managed by puppet # written by Norbert Varzariu # This Script is triggered by rsnapshot and dumps the specified dbs on the configured host. # host=<%=@host%> user=<%=@dbbackup_user%> dbs=( $(ssh -l <%=@backup_user-%> "$host" "PGPASSWORD='<%=@dbbackup_password%>' psql -U ${user} -Atc \"SELECT datname FROM pg_database WHERE NOT datistemplate AND NOT datname ~ '<%@ignore_dbs.each do |db|-%><%if db == @ignore_dbs.last-%><%=db-%><%else-%><%=db-%>|<%end-%><%end-%>'\"") ) for db in "${dbs[@]}"; do ssh -l <%=@backup_user-%> "$host" "PGPASSWORD='<%=@dbbackup_password%>' <%=@dumper-%> -U ${user} <%=@dump_flags-%> ${db}" > "$db".sql wait <% if @compress != '' -%> <%=@compress-%> "$db".sql <%end-%> done