Tuesday, October 27, 2009

Schema migrations won't work with Capistrano deployment

I've got a bunch of large CakePHP apps and I'm working on getting the
CakePHP schema migration to work instead of maintaining all the DB
struture by hand.

The problem I'm running into is when the schema.php file is
generated....

I generate the schema.php file on my local machine, push up the
changes with git, then deploy to the development server with git.

I then ssh into the development server, go into /var/www/development/
newsite/current and run this command:
/usr/local/cake_1.2.3.8166/cake/console/cake schema run create

But I get this error:
Error: schema.php could not be loaded

This is because the schema.php file has a class name of NewsiteSchema
whereas on the development server it is looking for a class of
20091027190427Schema because this is the folder that the new
deployment is sitting in.

Basically, when generating the schema, the class inside schema.php is
dependent upon the folder that the cake application is sitting in.

Has anyone else had this problem? Anyone know of a way to fix it?
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "CakePHP" group.
To post to this group, send email to cake-php@googlegroups.com
To unsubscribe from this group, send email to cake-php+unsubscribe@googlegroups.com
For more options, visit this group at http://groups.google.com/group/cake-php?hl=en
-~----------~----~----~----~------~----~------~--~---

No comments: