I have had a hard time installing 12 so I spent sometime trying to at least troubleshoot

Comments

socialnicheguru’s picture

Title: Unable to upgrade to aegir beta 12. provision front end script fails because of error » Unable to upgrade to aegir beta 12. drush hostmaster-install fails

I got the following if I let the full install run: "Unable to create new databases."

1. I have followed the directions
2. I have run as aegir
3. Three entires for aegir_root for my fully qualified domain, the ip address, and localhost are created with the random password created by the install script.
4. tested this command and I can connect to the mysql database with the password generated
mysql -raegir_root -p -h 'uname -n'

4. I tested and it was the last line in the install script which installs the frontend which causes this error because the back end installs fine.

$DRUSH hostmaster-install --aegir_host=$AEGIR_HOST --aegir_db_user=$AEGIR_DB_USER --aegir_db_pass=$AEGIR_DB_PASS --version=$AEGIR_VERSION

socialnicheguru’s picture

Title: Unable to upgrade to aegir beta 12. drush hostmaster-install fails » Unable to upgrade to aegir beta 12. drush hostmaster-install fails. there is a weird "site_test" variable
Issue tags: +aegir, +provision, +hostmaster

I continued testing

1. tested just drush hostmaster-install
I thought it strange that it says using password when in fact I was not.

su -s /bin/bash aegir aegir@devhost:~$ drush hostmaster-install
Aegir domain name [aegir.example.com]: aegir.somesite.com
The external command could not be [error]
executed due to an application error.
SQLSTATE[28000] [1045] Access denied [error]
for user
'aegir_root'@'aegir.somesite.com'
(using password: YES)
Drush command could not be completed.[error]
Output from failed command : [error]

Fatal error: Call to a member
function quote() on a non-object in
/var/aegir/.drush/provision/db/db.drush.inc
on line 315

An error occurred at function : [error]
drush_provision_hostmaster_install

2. tested "drush hostmaster-install --aegir_host=aegir.somesite.com"
I thought it strange that it still asked me for the Aegir domain name even though I defined the variable and no password was given yet it says "using password:YES"

aegir@devhost:~$ drush hostmaster-install --aegir_host=aegir.somesite.com
Aegir domain name [aegir.example.com]: aegir.somesite.com
The external command could not be [error]
executed due to an application error.
SQLSTATE[28000] [1045] Access denied [error]
for user
'aegir_root'@'aegir.somesite.com'
(using password: YES)
Drush command could not be completed.[error]
Output from failed command : [error]

Fatal error: Call to a member
function quote() on a non-object in
/var/aegir/.drush/provision/db/db.drush.inc
on line 315

An error occurred at function : [error]

3.
a) I ran the command with a password
b). at line 315 I placed a print_r($args);
before the original line at 315 to see what was going on

return substr($this->conn->quote(array_shift($args)), 1, -1);

c). I noticed "site_test" was the value printed. Shouldn't this be the aegir_root?

drush hostmaster-install --aegir_host=aegir.somesite.com --aegir_db_pass=0a7f601c75605506fb07f807ae1ac4ee
Aegir domain name [aegir.example.com]: aegir.somesite.com
The external command could not be [error]
executed due to an application error.
SQLSTATE[28000] [1045] Access denied [error]
for user
'aegir_root'@'aegir.somesite.com'
(using password: YES)
Drush command could not be completed.[error]
Output from failed command : [error]
Array
(
[0] => site_test
)

Fatal error: Call to a member
function quote() on a non-object in
/var/aegir/.drush/provision/db/db.drush.inc
on line 316

4. finally when I run the entire command with -verify I get the same thing

7wonders’s picture

I was getting the same error after enabling ssl. Turned out that I did not have the ssl certificates installed for mysql only had the option enabled. Followed the instructions here http://www.howtoforge.com/how-to-set-up-mysql-database-replication-with-... but without the replication part and now all is good again :)

John_Buehrer’s picture

I'm having the same problem myself, but note:
It looks like there are two errors here:
1. the wrong sort of mysql db connection parameters.
2. the script itself is not recovering from error #1.

It seems the script is support to show a diagnostic about the database problem, but that logic is wrong and gives the "object-oriented" error. Can that be fixed by someone familiar with it? Then the rest of us can fix our own database connections as we see fit.

Thanks!

Anonymous’s picture