Skip to content
This repository has been archived by the owner on Feb 8, 2024. It is now read-only.

Commit

Permalink
Merge pull request #6 from mattcvincent/mysql-port-fix
Browse files Browse the repository at this point in the history
Specify MySQL Port
  • Loading branch information
tiredofit authored Jan 9, 2018
2 parents c376a3e + 6a81eef commit e13c5b0
Showing 1 changed file with 8 additions and 6 deletions.
14 changes: 8 additions & 6 deletions install/etc/cont-init.d/10-freepbx
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ RTP_END=${RTP_END:-20000}
if [ "$DB_EMBEDDED" = "FALSE" ]; then
### Make sure that DB is accessible
while true; do
mysqlcmd='mysql -u'$DB_USER' -h'$DB_HOST' -p'$DB_PASS
mysqlcmd="mysql -u$DB_USER -h$DB_HOST -p$DB_PASS -P$DB_PORT"
out="`$mysqlcmd -e "SELECT COUNT(*) FROM information_schema.FILES;" 2>&1`"
echo "$out" | grep -E "COUNT|Enter" 2>&1 > /dev/null
if [ $? -eq 0 ]; then
Expand Down Expand Up @@ -112,6 +112,7 @@ if [ "$DB_EMBEDDED" = "FALSE" ]; then
<?php
\$amp_conf['AMPDBUSER'] = '$DB_USER';
\$amp_conf['AMPDBPASS'] = '$DB_PASS';
\$amp_conf['AMPDBPORT'] = '$DB_PORT';
\$amp_conf['AMPDBHOST'] = '$DB_HOST';
\$amp_conf['AMPDBNAME'] = '$DB_NAME';
\$amp_conf['AMPDBENGINE'] = 'mysql';
Expand All @@ -120,6 +121,7 @@ if [ "$DB_EMBEDDED" = "FALSE" ]; then
\$amp_conf['CDRDBNAME'] = '$DB_NAME';
\$amp_conf['CDRDBUSER'] = '$DB_USER';
\$amp_conf['CDRDBPASS'] = '$DB_PASS';
\$amp_conf['CDRDBPORT'] = '$DB_PORT';
\$amp_conf['CDRDBTYPE'] = 'mysql';
require_once('/var/www/html/admin/bootstrap.php');
?>
Expand All @@ -132,8 +134,8 @@ fi

if [ "$DB_EMBEDDED" = "FALSE" ]; then
# CDR Hack
mysql -u$DB_USER -p$DB_PASS -h$DB_HOST asterisk < /usr/src/freepbx/installlib/SQL/cdr.sql
mysql -u$DB_USER -p$DB_PASS -h$DB_HOST -e 'USE '$DB_NAME'; UPDATE freepbx_settings SET `value` = "'$DB_HOST'" WHERE keyword = "CDRDBHOST"; UPDATE freepbx_settings SET `value` = "'$DB_NAME'" WHERE keyword = "CDRDBNAME"; UPDATE freepbx_settings SET `value` = "'$DB_PASS'" WHERE keyword = "CDRDBPASS"; UPDATE freepbx_settings SET `value` = "'$DB_USER'" WHERE keyword = "CDRDBUSER"; UPDATE freepbx_settings SET `value` = "mysql" WHERE keyword = "CDRDBTYPE"; UPDATE freepbx_settings SET `value` = "'$DB_PORT'" WHERE keyword = "CDRDBPORT"; UPDATE freepbx_settings SET `value` = "cdr" WHERE keyword = "CDRDBTABLENAME";'
mysql -u$DB_USER -p$DB_PASS -h$DB_HOST -P$DB_PORT $DB_NAME < /usr/src/freepbx/installlib/SQL/cdr.sql
mysql -u$DB_USER -p$DB_PASS -h$DB_HOST -P$DB_PORT -e 'USE '$DB_NAME'; UPDATE freepbx_settings SET `value` = "'$DB_HOST'" WHERE keyword = "CDRDBHOST"; UPDATE freepbx_settings SET `value` = "'$DB_NAME'" WHERE keyword = "CDRDBNAME"; UPDATE freepbx_settings SET `value` = "'$DB_PASS'" WHERE keyword = "CDRDBPASS"; UPDATE freepbx_settings SET `value` = "'$DB_USER'" WHERE keyword = "CDRDBUSER"; UPDATE freepbx_settings SET `value` = "mysql" WHERE keyword = "CDRDBTYPE"; UPDATE freepbx_settings SET `value` = "'$DB_PORT'" WHERE keyword = "CDRDBPORT"; UPDATE freepbx_settings SET `value` = "cdr" WHERE keyword = "CDRDBTABLENAME";'
cp -R /var/www/html/admin/modules/cdr/install.php /var/www/html/admin/modules/cdr/.install.php
sed -i -e 's/\$db_host = !empty(\$db_host) ? \$db_host : "localhost";/\$db_host = !empty(\$db_host) ? \$db_host : "'$DB_HOST'";/g' /www/freepbx/admin/modules/cdr/install.php
sed -i -e 's/\$db_name = !empty(\$db_name) ? \$db_name : "asteriskcdrdb";/\$db_name = !empty(\$db_name) ? \$db_name : "'$DB_NAME'";/g' /www/freepbx/admin/modules/cdr/install.php
Expand Down Expand Up @@ -240,10 +242,10 @@ chown asterisk:asterisk /etc/freepbx.conf
if [ "$DB_EMBEDDED" = "FALSE" ]; then
### Set RTP Ports
echo '** [freepbx] Set RTP Ports'
mysql -u$DB_USER -p$DB_PASS -h$DB_HOST -e 'USE '$DB_NAME'; UPDATE sipsettings SET `data` = "'$RTP_START'" WHERE keyword = "rtpstart"; UPDATE sipsettings SET `data` = "'$RTP_FINISH'" WHERE keyword = "rtpend";'
mysql -u$DB_USER -p$DB_PASS -h$DB_HOST -P$DB_PORT -e 'USE '$DB_NAME'; UPDATE sipsettings SET `data` = "'$RTP_START'" WHERE keyword = "rtpstart"; UPDATE sipsettings SET `data` = "'$RTP_FINISH'" WHERE keyword = "rtpend";'

### Fix a Freepbx bug with upgrades
mysql -u$DB_USER -p$DB_PASS -h$DB_HOST -e 'USE '$DB_NAME'; ALTER TABLE featurecodes CHANGE column helptext helptext VARCHAR(10000);'
mysql -u$DB_USER -p$DB_PASS -h$DB_HOST -P$DB_PORT -e 'USE '$DB_NAME'; ALTER TABLE featurecodes CHANGE column helptext helptext VARCHAR(10000);'
fi

echo '** [freepbx] Starting Asterisk'
Expand All @@ -268,4 +270,4 @@ a2enmod rewrite >/dev/null
service apache2 restart >/dev/null

mkdir -p /tmp/state
touch /tmp/state/10-freepbx-init
touch /tmp/state/10-freepbx-init

0 comments on commit e13c5b0

Please sign in to comment.