Alex Lourie has uploaded a new change for review.

Change subject: packaging: Updated psql calls not to ask password
......................................................................

packaging: Updated psql calls not to ask password

Currently we use our own pgpass file to supply the required
password for the user. This patch adds a "-w" flag for all
psql calls that inhibits quering password at all. This will
lead to psql connection errors if pgpass was incorrectly
defined, but password will still not be asked, which is the
desired behavior of the setup.

Bug-Url: https://bugzilla.redhat.com/915409
Change-Id: Ib73a7e3a5955a66afa0eeeafa80cf1f6464e8fd4
Signed-off-by: Alex Lourie <[email protected]>
---
M backend/manager/dbscripts/dbfunctions.sh
M backend/manager/dbscripts/engine-db-install.sh
M backend/manager/dbscripts/restore.sh
M packaging/fedora/setup/common_utils.py
M packaging/fedora/setup/engine-upgrade.py
5 files changed, 24 insertions(+), 16 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/18/12418/1

diff --git a/backend/manager/dbscripts/dbfunctions.sh 
b/backend/manager/dbscripts/dbfunctions.sh
index b7b1597..5a80b6f 100755
--- a/backend/manager/dbscripts/dbfunctions.sh
+++ b/backend/manager/dbscripts/dbfunctions.sh
@@ -30,7 +30,7 @@
     local ret_instead_exit=${5}
     # tuples_only - supress header (column names) and footer  (rows affected) 
from output.
     # ON_ERROR_STOP - stop on error.
-    local cmdline="psql --pset=tuples_only=on --set ON_ERROR_STOP=1"
+    local cmdline="psql -w --pset=tuples_only=on --set ON_ERROR_STOP=1"
     cmdline="${cmdline} --file=${filename} "
 
     if [[ -n "${dbname}" ]]; then
@@ -87,7 +87,7 @@
     execute_file "drop_all_functions.sql" ${DATABASE} ${SERVERNAME} ${PORT} > 
/dev/null
     \rm -f drop_all_functions.sql
     #drop old uuid functions
-    psql -U postgres -h ${SERVERNAME} -p ${PORT} -f 
drop_old_uuid_functions.sql ${DATABASE} > /dev/null
+    psql -w -U postgres -h ${SERVERNAME} -p ${PORT} -f 
drop_old_uuid_functions.sql ${DATABASE} > /dev/null
     # recreate generic functions
     execute_file "create_functions.sql" ${DATABASE} ${SERVERNAME} ${PORT} > 
/dev/null
 }
@@ -157,10 +157,10 @@
     
custom_materialized_views_file="upgrade/post_upgrade/custom/create_materialized_views.sql"
     if [ -f ${custom_materialized_views_file} ]; then
         echo "running custom materialized views from 
${custom_materialized_views_file} ..."
-        psql -U ${USERNAME} --pset=tuples_only=on  --set ON_ERROR_STOP=1 -h 
${SERVERNAME} -p ${PORT} -f "${custom_materialized_views_file}" ${DATABASE} > 
/dev/null
+        psql -w -U ${USERNAME} --pset=tuples_only=on  --set ON_ERROR_STOP=1 -h 
${SERVERNAME} -p ${PORT} -f "${custom_materialized_views_file}" ${DATABASE} > 
/dev/null
         if [ $? -ne 0 ] ; then
             #drop all custom views
-            psql -U ${USERNAME} -h ${SERVERNAME} -p ${PORT} -c "select 
DropAllCustomMaterializedViews();" ${DATABASE} > /dev/null
+            psql -w -U ${USERNAME} -h ${SERVERNAME} -p ${PORT} -c "select 
DropAllCustomMaterializedViews();" ${DATABASE} > /dev/null
             echo "Illegal syntax in custom Materialized Views, Custom 
Materialized Views were dropped."
         fi
     fi
@@ -224,17 +224,17 @@
 
 get_current_version() {
     echo "select version from schema_version where current = true order by id 
LIMIT 1;" |
-                    psql -U ${USERNAME} --pset=tuples_only=on ${DATABASE} -h 
${SERVERNAME} -p ${PORT}
+                    psql -w -U ${USERNAME} --pset=tuples_only=on ${DATABASE} 
-h ${SERVERNAME} -p ${PORT}
 }
 
 get_installed_version() {
     local cheksum=${1}
     echo "select version from schema_version where checksum = '${cheksum}' and 
state = 'INSTALLED';" |
-                    psql -U ${USERNAME} --pset=tuples_only=on ${DATABASE} -h 
${SERVERNAME} -p ${PORT}
+                    psql -w -U ${USERNAME} --pset=tuples_only=on ${DATABASE} 
-h ${SERVERNAME} -p ${PORT}
 }
 
 get_last_installed_id() {
-    echo "select max(id) from schema_version where state in 
('INSTALLED','SKIPPED')" | psql -U ${USERNAME} --pset=tuples_only=on 
${DATABASE} -h ${SERVERNAME} -p ${PORT}
+    echo "select max(id) from schema_version where state in 
('INSTALLED','SKIPPED')" | psql -w -U ${USERNAME} --pset=tuples_only=on 
${DATABASE} -h ${SERVERNAME} -p ${PORT}
 }
 set_last_version() {
     id=$(get_last_installed_id)
@@ -243,7 +243,7 @@
 }
 
 get_db_time(){
-    echo "select now();" | psql -U ${USERNAME} --pset=tuples_only=on 
${DATABASE} -h ${SERVERNAME} -p ${PORT}
+    echo "select now();" | psql -w -U ${USERNAME} --pset=tuples_only=on 
${DATABASE} -h ${SERVERNAME} -p ${PORT}
 }
 
 # gets a directory and required depth and return all sql & sh files
@@ -363,7 +363,7 @@
                 CMD="insert into 
schema_version(version,script,checksum,installed_by,started_at,ended_at,state,current,comment)
                      values (trim('$ver'),'$file','$checksum','${USERNAME}',
                      cast(trim('$before') as timestamp),cast(trim('$after') as 
timestamp),'$state',false,'$comment');"
-                psql -U ${USERNAME} --pset=tuples_only=on -h ${SERVERNAME} -p 
${PORT} -c "${CMD}" ${DATABASE} > /dev/null
+                psql -w -U ${USERNAME} --pset=tuples_only=on -h ${SERVERNAME} 
-p ${PORT} -c "${CMD}" ${DATABASE} > /dev/null
             fi
         done
         set_last_version
@@ -446,7 +446,7 @@
    if [ "${object_type}" = "vm" ]; then
        CMD="select vm_name as vm_name from vm_static a ,vm_dynamic b
             where a.vm_guid = b.vm_guid and status = ${IMAGE_LOCKED};"
-       psql -c "${CMD}" -U ${USERNAME} -d "${DATABASE}" -h "${SERVERNAME}" -p 
"${PORT}"
+       psql -w -c "${CMD}" -U ${USERNAME} -d "${DATABASE}" -h "${SERVERNAME}" 
-p "${PORT}"
        CMD="select vm_name as vm_name , image_group_id as disk_id
             from images a,vm_static b,vm_device c
             where a.image_group_id = c.device_id and b.vm_guid = c.vm_id and
@@ -454,11 +454,11 @@
             entity_type ilike 'VM' and
             image_group_id in
             (select device_id from vm_device where is_plugged);"
-       psql -c "${CMD}" -U ${USERNAME} -d "${DATABASE}" -h "${SERVERNAME}" -p 
"${PORT}"
+       psql -w -c "${CMD}" -U ${USERNAME} -d "${DATABASE}" -h "${SERVERNAME}" 
-p "${PORT}"
    elif [ "${object_type}" = "template" ]; then
        CMD="select vm_name as template_name from vm_static
                   where template_status = ${TEMPLATE_LOCKED};"
-       psql -c "${CMD}" -U ${USERNAME} -d "${DATABASE}" -h "${SERVERNAME}" -p 
"${PORT}"
+       psql -w -c "${CMD}" -U ${USERNAME} -d "${DATABASE}" -h "${SERVERNAME}" 
-p "${PORT}"
        CMD="select vm_name as template_name, image_group_id as disk_id
             from images a,vm_static b,vm_device c
             where a.image_group_id = c.device_id and b.vm_guid = c.vm_id and
@@ -466,14 +466,14 @@
             entity_type ilike 'TEMPLATE' and
             image_group_id in
             (select device_id from vm_device where is_plugged);"
-       psql -c "${CMD}" -U ${USERNAME} -d "${DATABASE}" -h "${SERVERNAME}" -p 
"${PORT}"
+       psql -w -c "${CMD}" -U ${USERNAME} -d "${DATABASE}" -h "${SERVERNAME}" 
-p "${PORT}"
    elif [ "${object_type}" = "disk" ]; then
        CMD="select vm_id as entity_id,disk_id
             from base_disks a ,images b, vm_device c
             where a.disk_id = b.image_group_id and
                   b.image_group_id = c.device_id and
                   imagestatus = ${LOCKED} and is_plugged;"
-       psql -c "${CMD}" -U ${USERNAME} -d "${DATABASE}" -h "${SERVERNAME}" -p 
"${PORT}"
+       psql -w -c "${CMD}" -U ${USERNAME} -d "${DATABASE}" -h "${SERVERNAME}" 
-p "${PORT}"
    fi
 }
 
diff --git a/backend/manager/dbscripts/engine-db-install.sh 
b/backend/manager/dbscripts/engine-db-install.sh
index 3b52901..2fd6c47 100755
--- a/backend/manager/dbscripts/engine-db-install.sh
+++ b/backend/manager/dbscripts/engine-db-install.sh
@@ -97,7 +97,7 @@
 
 # Update PSQL BIN to include .pgpass environment variable, host and port values
 ENGINE_PGPASS=${ENGINE_PGPASS:-/etc/ovirt-engine/.pgpass}
-PSQL="${PSQL_BIN} -h $DB_HOST -p $DB_PORT"
+PSQL="${PSQL_BIN} -w -h $DB_HOST -p $DB_PORT"
 
 if [[ "x${REMOTE_INSTALL}" == "xremote" ]]
 then
diff --git a/backend/manager/dbscripts/restore.sh 
b/backend/manager/dbscripts/restore.sh
index 29834d0..aa6532d 100755
--- a/backend/manager/dbscripts/restore.sh
+++ b/backend/manager/dbscripts/restore.sh
@@ -68,7 +68,7 @@
 fi
 
 echo "Restore of database $DATABASE from $FILE started..."
-psql  -h ${SERVERNAME} -p ${PORT} -U ${USERNAME} -f ${FILE}
+psql -w -h ${SERVERNAME} -p ${PORT} -U ${USERNAME} -f ${FILE}
 
 if [ $? -eq 0 ];then
     echo "Restore of database $DATABASE from $FILE completed."
diff --git a/packaging/fedora/setup/common_utils.py 
b/packaging/fedora/setup/common_utils.py
index 8c1aa94..b214aed 100755
--- a/packaging/fedora/setup/common_utils.py
+++ b/packaging/fedora/setup/common_utils.py
@@ -505,6 +505,7 @@
         "-p", dbPort,
         "-U", userName,
         "-d", dbName,
+        "-w",
         "-c", sqlQuery,
     ]
     return execCmd(cmdList=cmd, failOnError=failOnError, msg=errMsg, 
envDict=getPgEnv())
@@ -880,6 +881,7 @@
         "-p", port,
         "-U", user,
         "-d", basedefs.DB_POSTGRES,
+        "-w",
         "-f", backupFile,
     ]
 
@@ -1065,6 +1067,7 @@
     cmd = [
         basedefs.EXEC_PSQL,
         "-U", getDbAdminUser(),
+        "-w",
         "-c", query,
     ]
     execCmd(cmdList=cmd, failOnError=True, 
msg=output_messages.ERR_DB_CONNECTIONS_BLOCK, envDict=getPgEnv())
@@ -1082,6 +1085,7 @@
             "-p", getDbPort(),
             "-U", getDbAdminUser(),
             "-d", basedefs.DB_TEMPLATE,
+            "-w",
             "-c", version_query,
         ]
     out, rc = execCmd(cmdList=cmd, failOnError=True, 
msg=output_messages.ERR_POSTGRESQL, envDict=getPgEnv())
@@ -1095,6 +1099,7 @@
     cmd = [
         basedefs.EXEC_PSQL,
         "-U", getDbAdminUser(),
+        "-w",
         "-c", query,
     ]
     execCmd(cmdList=cmd, failOnError=True, 
msg=output_messages.ERR_DB_CONNECTIONS_CLEAR, envDict=getPgEnv())
@@ -1108,6 +1113,7 @@
         "-U", getDbAdminUser(),
         "-h", getDbHostName(),
         "-p", getDbPort(),
+        "-w",
         "--list",
     ]
     output, rc = execCmd(cmdList=cmd, msg=output_messages.ERR_DB_TEMP_LIST, 
envDict=getPgEnv())
diff --git a/packaging/fedora/setup/engine-upgrade.py 
b/packaging/fedora/setup/engine-upgrade.py
index f1e5835..cc697a3 100755
--- a/packaging/fedora/setup/engine-upgrade.py
+++ b/packaging/fedora/setup/engine-upgrade.py
@@ -386,6 +386,7 @@
                 "-h", SERVER_NAME,
                 "-p", SERVER_PORT,
                 "-d", basedefs.DB_TEMPLATE,
+                "-w",
                 "-f", self.sqlfile,
             ]
             output, rc = utils.execCmd(cmdList=cmd, failOnError=True, 
msg=MSG_ERROR_RESTORE_DB, envDict=utils.getPgEnv())
@@ -821,6 +822,7 @@
         basedefs.EXEC_PSQL,
         "-U", SERVER_ADMIN,
         "-f", basedefs.FILE_DB_ASYNC_TASKS,
+        "-w",
         "-d", dbName,
     ]
 


--
To view, visit http://gerrit.ovirt.org/12418
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ib73a7e3a5955a66afa0eeeafa80cf1f6464e8fd4
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Alex Lourie <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to