install_postfixadmin.sh: fix error creating file '/etc/postfixadmin/vacation.conf' in case of postfix mysql database.

This commit is contained in:
Christoph 2019-10-14 00:21:53 +02:00
parent f97f38fa38
commit 40987cb8f5

View File

@ -314,11 +314,6 @@ if [[ -z "$APACHE_VHOST_DIR" ]] ; then
fi fi
fi fi
[[ -n "$AUTOREPLY_HOSTNAME" ]] || AUTOREPLY_HOSTNAME=autoreply.${MAIN_DOMAIN}.$TLD
[[ -n "$AUTOREPLY_HOSTNAME" ]] || AUTOREPLY_HOSTNAME=autoreply.${MAIN_DOMAIN}.$TLD
[[ -n "$POSTFIX_DB_TYPE" ]] || fatal "Database Type of Postfix Database (POSTFIX_DB_TYPE) not present!" [[ -n "$POSTFIX_DB_TYPE" ]] || fatal "Database Type of Postfix Database (POSTFIX_DB_TYPE) not present!"
[[ -n "$POSTFIX_DB_HOST_MYSQL" ]] || POSTFIX_DB_HOST_MYSQL="$DEFAULT_POSTFIX_DB_HOST_MYSQL" [[ -n "$POSTFIX_DB_HOST_MYSQL" ]] || POSTFIX_DB_HOST_MYSQL="$DEFAULT_POSTFIX_DB_HOST_MYSQL"
[[ -n "$POSTFIX_DB_HOST_PGSQL" ]] ||POSTFIX_DB_HOST_PGSQL="$DEFAULT_POSTFIX_DB_HOST_PGSQL" [[ -n "$POSTFIX_DB_HOST_PGSQL" ]] ||POSTFIX_DB_HOST_PGSQL="$DEFAULT_POSTFIX_DB_HOST_PGSQL"
@ -326,6 +321,14 @@ fi
[[ -n "$POSTFIX_DB_USER" ]] || POSTFIX_DB_USER="$DEFAULT_POSTFIX_DB_USER" [[ -n "$POSTFIX_DB_USER" ]] || POSTFIX_DB_USER="$DEFAULT_POSTFIX_DB_USER"
[[ -n "$POSTFIX_DB_PASS" ]] || fatal "Password of Postfix Database (POSTFIX_DB_PASS) not given!" [[ -n "$POSTFIX_DB_PASS" ]] || fatal "Password of Postfix Database (POSTFIX_DB_PASS) not given!"
[[ -n "$AUTOREPLY_HOSTNAME" ]] || AUTOREPLY_HOSTNAME=autoreply.${MAIN_DOMAIN}.$TLD
if [[ "$POSTFIX_DB_HOST_MYSQL" =~ sock$ ]] || [[ "$POSTFIX_DB_HOST_MYSQL" =~ localhost ]]; then
VACATION_DB_HOST_MYSQL="127.0.0.1"
else
VACATION_DB_HOST_MYSQL="$POSTFIX_DB_HOST_MYSQL"
fi
[[ -n "$MYSQL_DEBIAN_INSTALLATION" ]] || MYSQL_DEBIAN_INSTALLATION=false [[ -n "$MYSQL_DEBIAN_INSTALLATION" ]] || MYSQL_DEBIAN_INSTALLATION=false
if [[ "$POSTFIX_DB_TYPE" = "mysql" ]]; then if [[ "$POSTFIX_DB_TYPE" = "mysql" ]]; then
@ -1483,7 +1486,7 @@ echo -e "\n\n\t\033[37m\033[1mInstall Vacation\033[m\n"
echononl "\tCreate system group '$VACATION_GROUP'" echononl "\tCreate system group '$VACATION_GROUP'"
if ! grep -q "$VACATION_GROUP" /etc/group /etc/group > /dev/null 2>&1 ; then if ! grep -q "$VACATION_GROUP" /etc/group > /dev/null 2>&1 ; then
addgroup --system --gid 65501 $VACATION_GROUP > "$log_file" 2>&1 addgroup --system --gid 65501 $VACATION_GROUP > "$log_file" 2>&1
if [[ $? -ne 0 ]]; then if [[ $? -ne 0 ]]; then
echo_failed echo_failed
@ -1546,9 +1549,9 @@ fi
echononl "\tCopy vacation script to '/var/spool/vacation/vacation.pl'" echononl "\tCopy vacation script to '/var/spool/vacation/vacation.pl'"
_vacacion_script="$(find ${_src_base_dir}/postfixadmin-${PF_ADMIN_VERSION} -type f -name vacation.pl -print 2>/dev/null)" _vacation_script="$(find ${_src_base_dir}/postfixadmin-${PF_ADMIN_VERSION} -type f -name vacation.pl -print 2>/dev/null)"
if [[ -z "$(trim "$_vatacion_script")" ]] ; then if [[ -z "$(trim "$_vacation_script")" ]] ; then
cp -a ${_vacacion_script} /var/spool/vacation/ > "$log_file" 2>&1 cp -a ${_vacation_script} /var/spool/vacation/ > "$log_file" 2>&1
if [[ $? -eq 0 ]];then if [[ $? -eq 0 ]];then
echo_ok echo_ok
else else
@ -1645,6 +1648,13 @@ cat <<EOF > /etc/postfixadmin/vacation.conf 2> "$log_file"
\$db_username = '${POSTFIX_DB_USER}'; \$db_username = '${POSTFIX_DB_USER}';
\$db_password = '${POSTFIX_DB_PASS}'; \$db_password = '${POSTFIX_DB_PASS}';
\$db_name = '${POSTFIX_DB_NAME}'; \$db_name = '${POSTFIX_DB_NAME}';
EOF
if [[ "$POSTFIX_DB_TYPE" = "mysql" ]]; then
cat <<EOF >> /etc/postfixadmin/vacation.conf 2> "$log_file"
\$db_host = '$VACATION_DB_HOST_MYSQL';
EOF
fi
cat <<EOF >> /etc/postfixadmin/vacation.conf 2> "$log_file"
\$vacation_domain = '${AUTOREPLY_HOSTNAME}'; \$vacation_domain = '${AUTOREPLY_HOSTNAME}';
\$syslog = 0; \$syslog = 0;
\$log_to_file = 1; \$log_to_file = 1;