paul.eastlund-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org
2007-Nov-02 19:50 UTC
Question about environments and rake
Hi, Short version: How do I specify an environment (as in, development, production, or in my case, a custom environment) to the command ''rake db:migrate?'' Long version: A friend and I are putting together a web app using Ruby on Rails. We wanted to both have our own development instances running to play with, each that could be configured slightly differently. So what we ended up doing was creating two environments -- user1_development, and user2_development -- with their own environment files, and their own listings in config/databases.yml. We wanted each of these instances to have their own databases, so the entry in databases.yml for user1_development, for instance, is identical to that for the "development" environment, except instead of the database being named "projectname_development" it''s named "projectname_user1_development." We''re using mongrel and each have our own mongrel_cluster.yml files that specify our respective environments, so that all works fine. The problem is with rake db:migrate. I cannot figure out how to get rake to run in a custom environment; so, for instance, when I do a rake db:migrate, I don''t know how to get it to migrate database "projectname_user1_development" instead of "projectname_development." Does anyone have any idea how to do this? Thanks very much, Paul Eastlund --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
On Nov 2, 2007 7:03 PM, Philip Hallstrom <rails-SUcgGwS4C16SUMMaM/qcSw@public.gmane.org> wrote:> > > Short version: > > How do I specify an environment (as in, development, production, or in > > my case, a custom environment) to the command ''rake db:migrate?'' > > rake db:migrate RAILS_ENV=production >Thanks for the tip! This worked like a charm.> Is the only difference b/n your sites database.yml? Is so, why not commit > a database.yml-sample and then svn-ignore database.yml and just set it to > what you want. > > That works well for us... and allows us to all use "development"... > > Not saying you have to, just pointing out another option.Thanks for the suggestion. No, there''s also some minor differences between our config/environments files. The chief other issue was this: I want to have a non-secure page that contains a form that the user can fill secure data into. In HTML terms, this just means that the form tag needs a URL that starts with "https://" but there''s no way to specify the protocol without specifying the domain, which means each of our apps needs to know the domain it''s being hosted at. Since Rails has no knowledge of this already, and the two apps are at slightly different domains, we put this data in the environment files -- so config/environments/user1.rb has the line DOMAIN=" user1.oursite.com", for instance. It''s a little bit of a hack, but we searched around online and couldn''t find a prettier solution. Please let me know if you have one. -Paul -- Paul Ragnar Eastlund Me: (relating a joke) "...so I said, ''I''m working at Google. I''m the guy who frantically does research when you type in a query.''" Lorraine: "Oh." (long pause) "But is that really what you do?" Sharon: "...And now, the joke is on you." --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
> Short version: > How do I specify an environment (as in, development, production, or in > my case, a custom environment) to the command ''rake db:migrate?''rake db:migrate RAILS_ENV=production> Long version: > A friend and I are putting together a web app using Ruby on Rails. We > wanted to both have our own development instances running to play > with, each that could be configured slightly differently. So what we > ended up doing was creating two environments -- user1_development, and > user2_development -- with their own environment files, and their own > listings in config/databases.yml. We wanted each of these instances toIs the only difference b/n your sites database.yml? Is so, why not commit a database.yml-sample and then svn-ignore database.yml and just set it to what you want. That works well for us... and allows us to all use "development"... Not saying you have to, just pointing out another option.> have their own databases, so the entry in databases.yml for > user1_development, for instance, is identical to that for the > "development" environment, except instead of the database being named > "projectname_development" it''s named "projectname_user1_development." > > We''re using mongrel and each have our own mongrel_cluster.yml files > that specify our respective environments, so that all works fine. > > The problem is with rake db:migrate. I cannot figure out how to get > rake to run in a custom environment; so, for instance, when I do a > rake db:migrate, I don''t know how to get it to migrate database > "projectname_user1_development" instead of "projectname_development." > Does anyone have any idea how to do this? > > Thanks very much, > Paul Eastlund > > > > >--~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---