Yedidyah Bar David has uploaded a new change for review.

Change subject: packaging: engine-backup: use common pg_cmd
......................................................................

packaging: engine-backup: use common pg_cmd

Actually this simply works...

local variables defined by a bash function are inherrited by other
functions called from it.

Change-Id: I745db3155f679a6cd6f49763d3f9df4e08031156
Signed-off-by: Yedidyah Bar David <d...@redhat.com>
---
M packaging/bin/engine-backup.sh
1 file changed, 7 insertions(+), 30 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/37/40237/1

diff --git a/packaging/bin/engine-backup.sh b/packaging/bin/engine-backup.sh
index ac45ef0..cd52336 100755
--- a/packaging/bin/engine-backup.sh
+++ b/packaging/bin/engine-backup.sh
@@ -585,6 +585,12 @@
        fi
 }
 
+pg_cmd() {
+       local cmd="$1"
+       shift
+       "${cmd}" -w -U "${user}" -h "${host}" -p "${port}" -d "${database}" "$@"
+}
+
 dobackup() {
        output "Backing up:"
        log "Generating pgpass"
@@ -668,12 +674,6 @@
 
        local pgdump_log="${TEMP_FOLDER}/pgdump.log"
 
-       pg_cmd() {
-               local cmd="$1"
-               shift
-               "${cmd}" -w -U "${user}" -h "${host}" -p "${port}" -d 
"${database}" "$@"
-       }
-
        if [ -n "${compressor}" ]; then
                PGPASSFILE="${MYPGPASS}" pg_cmd pg_dump \
                        -E "UTF8" \
@@ -700,8 +700,6 @@
                cat "${pgdump_log}" >> "${LOG}"
                logdie "Database ${database} backup failed"
        fi
-
-       unset -f pg_cmd
 }
 
 dorestore() {
@@ -791,12 +789,6 @@
 
        local pgrestorelog="${TEMP_FOLDER}/pg-restore-log"
 
-       pg_cmd() {
-               local cmd="$1"
-               shift
-               "${cmd}" -w -U "${user}" -h "${host}" -p "${port}" -d 
"${database}" "$@"
-       }
-
        PGPASSFILE="${MYPGPASS}" pg_cmd psql -c "select 1" >> "${LOG}" 2>&1 \
                || logdie "Can't connect to database '${database}'. Please see 
'${0} --help'."
 
@@ -819,8 +811,6 @@
                cat "${pgrestorelog}" >> "${LOG}"
                logdie "Failed checking if database '${database}' is empty"
        fi
-
-       unset -f pg_cmd
 }
 
 verifyVersion() {
@@ -852,12 +842,6 @@
        local compressor="$7"
        local format="$8"
        local jobsnum="$9"
-
-       pg_cmd() {
-               local cmd="$1"
-               shift
-               "${cmd}" -w -U "${user}" -h "${host}" -p "${port}" -d 
"${database}" "$@"
-       }
 
        log "restoreDB: backupfile ${backupfile} user ${user} host ${host} port 
${port} database ${database} orig_user ${orig_user} compressor ${compressor} 
format ${format} jobsnum ${jobsnum}"
        local pgrestorelog="${TEMP_FOLDER}/pg-restore-log"
@@ -909,8 +893,6 @@
 )
        local numerrors=$(grep 'ERROR: ' "${pgrestorelog}" | grep -Ev 
"${IGNORED_ERRORS}" | wc -l)
        [ ${numerrors} -ne 0 ] && logdie "Errors while restoring database 
${database}"
-
-       unset -f pg_cmd
 }
 
 cleanDbTempData() {
@@ -922,13 +904,8 @@
        local psqllog="${TEMP_FOLDER}/psql-cleanup-log"
        echo "${tables_to_clean}" | while read -r table; do
                output "- ${table}"
-               PGPASSFILE="${MYPGPASS}" psql \
-                       -w \
+               PGPASSFILE="${MYPGPASS}" pg_cmd psql \
                        -t \
-                       -U "${user}" \
-                       -h "${host}" \
-                       -p "${port}" \
-                       -d "${database}" \
                        -c "TRUNCATE TABLE ${table} cascade" \
                        > "${psqllog}"  2>&1 \
                        || logdie "Failed cleaning up ${table}"


-- 
To view, visit https://gerrit.ovirt.org/40237
To unsubscribe, visit https://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I745db3155f679a6cd6f49763d3f9df4e08031156
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Yedidyah Bar David <d...@redhat.com>
_______________________________________________
Engine-patches mailing list
Engine-patches@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to