I just replied to Saurabh's similar question on the Adva mailing list.  
Here's my solution to the problem:

I have recently deployed an Adva CMS based application to Heroku. It  
is running fine now, but there are complications.

Besides from not supporting submodules, the big issue on Heroku is  
that the application are not allowed to write files on the local disk  
- except to the /tmp directory of the application. This means two  
things:

1) Migrations won't work because Adva aren't allowed to copy it's  
migration files to /db/migrations
2) Caching won't work because Rails aren't allowed to write it's cache  
files to the public folder

No. 2 is easily resolved by disabling controller caching in /config/ 
environments/production.rb:
config.action_controller.perform_caching = false # We can't do file- 
based caching on Heroku

No. 1 can be solved in a number of ways, the easiest being that you do  
migrations locally and then import your local database to Heroku. This  
will get you up and running, but is no use once you have production  
data in your database. For this reason, I have removed Adva's copying  
of files when migrating and added a rake task that will copy all  
Adva's migrations from all the Adva engines to /db/migrations -  
permantly.

Put this code in /lib/tasks/adva.rake (will both remove Adva's copying  
and give you the new rake task):
http://pastie.org/560590

- and run "rake db:copy_adva" to copy Adva's migrations.

I'm not 100% happy with that solution since I now have a lot of  
"foreign" migrations laying in my main app, but it works - also on the  
longer scale. I can run this task everytime I upgrade Adva (which also  
harder because it can't be a submodule) and make sure I get all the  
database changes.

Cheers,
Casper Fabricius
http://casperfabricius.com


On 27/07/2009, at 19.54, saur...@safew wrote:

>
> Hi there,
>
> I am trying to install adva cms over Heroku. I am facing this problem,
>
> saur...@laptop:~/adva/adva$ heroku rake adva:install
> rake aborted!
> Read-only file system - /disk1/home/slugs/34680_13540ed_19fb/mnt/db/
> migrate/app
>
> (See full trace by running task with --trace)
> (in /disk1/home/slugs/34680_13540ed_19fb/mnt)
>
> adva is based on Rails engines and all the migrations lie in the
> engines.is this a problem because of that ?
> >


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Heroku" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/heroku?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to