From 3fcfb0e1f4cf535ce3356ecef32a21a9e9fc27b5 Mon Sep 17 00:00:00 2001 From: Pavel Raiskup Date: Fri, 22 Jul 2016 08:20:28 +0200 Subject: Move the repo to github. --- share/postgresql-setup/library.sh.in | 139 ----------------------------------- 1 file changed, 139 deletions(-) delete mode 100644 share/postgresql-setup/library.sh.in (limited to 'share/postgresql-setup/library.sh.in') diff --git a/share/postgresql-setup/library.sh.in b/share/postgresql-setup/library.sh.in deleted file mode 100644 index 9835029..0000000 --- a/share/postgresql-setup/library.sh.in +++ /dev/null @@ -1,139 +0,0 @@ -die() { echo >&2 $"FATAL: $@" ; exit 1 ; } -error() { echo >&2 $"ERROR: $@" ; } -error_q() { echo >&2 $" $@" ; } -warn() { echo >&2 $"WARNING: $@" ; } -warn_q() { echo >&2 $" $@" ; } -info() { echo >&2 $" * $@" ; } -info_q() { echo >&2 $" $@" ; } -debug() { test "$option_debug" = "1" && echo >&2 $"DEBUG: $@"; } - - -set_var() -{ - eval "$1=\"$2\"" -} - - -root_prereq() -{ - test "$(id -u)" -eq 0 || die "$0 requires root access for this action" -} - - -read_config_file() -{ - local key="" val="" - - test -r "$1" || die "can't read file '$1'" - - for i in $2; do - eval "unset __pg_conf_$i" - done - - # No easy (and secure) way to read configuration files from bash script, - # sorry. - while read key val; do - [[ $key =~ ^[a-zA-Z_][a-zA-Z0-9_]*$ ]] || return 1 - - case " $2 " in - *" $key "*) - ;; - *) - warn "config file '$1': unknown key '$key'" - continue - ;; - esac - - # Strip double quotes - case "$val" in - \"*\") - val=${val##\"} - val=${val%%\"} - ;; - esac - - # Make it reasonably safe. Keep dolar-sign escaped. - eval "__pg_conf_$key=\$val" - - done < <(grep -v -e "^$" -e "^#" < "$1") -} - - -parse_upgrade_setup() -{ - local action="$1" - local expected_id="$2" - local id temp_major temp_engine temp_data_default temp_description - - local upgrade_confdir="@sysconfdir@/@NAME_BINARYBASE@-setup/upgrade" - - debug "using 'upgrade' confdir $upgrade_confdir" - test -d "$upgrade_confdir" || die "can't read confdir $upgrade_confdir" - - local my_vars="id comment data_default engine description major scls \ - redhat_sockets_hack pghost_override package" - while read conffile - do - read_config_file "$conffile" "$my_vars" - - if test help = "$action"; then - echo "$__pg_conf_id - $__pg_conf_description" - elif test list = "$action"; then - echo "$__pg_conf_id $__pg_conf_major" - elif test config = "$action"; then - test "$__pg_conf_id" = "$expected_id" || continue - debug "reading config $conffile" - for i in $my_vars; do - set_var "upgradefrom_$i" "\$__pg_conf_$i" - - local cm="config file '$conffile'" - # 'scls' and 'redhat_sockets_hack' are used to adjust - # environment and could be bash-injected. - case "$i" in - scls) - test -z "$upgrade_from_scls" \ - || [[ $upgrade_from_scls =~ ^[-a-zA-Z0-9_\ ]+$ ]] \ - || die "$cm: bad '$i' value '$upgrade_from_scls'" - ;; - redhat_sockets_hack) - case "$upgradefrom_redhat_sockets_hack" in - yes|no|'') - ;; - *) - die "$cm: bad '$i' value" - ;; - esac - ;; - esac - done - return 0 - fi - done < <(find "$upgrade_confdir" -maxdepth 1 -type f -name '*.conf') - - case "$action" in - help|list) - return 0 - ;; - esac - return 1 -} - - -# run_cmd_as_dbadmin COMMAND STDOUT STDERR -run_cmd_as_dbadmin() -{ - # Convenient tool-aliases - local SU_POSTGRES="@SU_POSTGRES@" - - local cmd="@SCL_SOURCE@$1" - local stdout="$2" stderr="$3" - - # don't print additional spaces - set -- $cmd - debug "running command under postgres user: $@" - ( - test -n "$stdout" && exec >>"$stdout" - test -n "$stderr" && exec 2>>"$stderr" - $SU_POSTGRES -c "$cmd" < /dev/null - ) -} -- cgit