$ heroku config HIDE => true RACK_ENV => production $ heroku config:add MAINTAIN=true Adding config vars: MAINTAIN => true Restarting app...done. $ heroku config HIDE => true MAINTAIN => true RACK_ENV => production $ heroku config:remove MAINTAIN Removing MAINTAIN and restarting app...done. $ heroku config HIDE => true RACK_ENV => production $
This is what I am seeing. Note the 'HIDE' variable maybe only for uppercase env variables? On Sep 4, 2009, at 2:24 AM, GreenAsJade wrote: > > The old thread on this is here: > > http://groups.google.com/group/heroku/browse_thread/thread/7963db5d7691f52e/ > > Note that RACK_ENV always stayed set, in case that's what you saw. > > > On Sep 4, 1:08 pm, Keenan Brock <[email protected]> wrote: >> Hi GaJ >> >> I just tested and it looks like it works the way you and I want. (it >> is additive so you can just specify the one variable) >> >> Not sure when they fixed it, but sure enough - we're all set on this >> one. >> >> --Keenan >> >> On Sep 3, 2009, at 11:26 PM, GreenAsJade wrote: >> >> >> >>> It's a nice idea. >> >>> One small fly in the ointment is that you can't individually set >>> heroku configuraiton variables (unless this is fixed now?) >> >>> Certainly last time I tried it, I found that any env var not set >>> explicitly on the same config:add statement was removed. IE >>> config:add is not additive. >> >>> This means that to implement the suggestion above, you would have to >>> ensure that each time you turn on and off MAINTAIN you will have >>> to be >>> setting all the other vars as well. A royal PITA. >> >>> GaJ >> >>> On Sep 4, 3:59 am, Keenan Brock <[email protected]> wrote: >>>> Hi Thomas, >> >>>> For passenger, there is a way to say if a file is present, then >>>> display a maintenance page. (using mod rewrite) >>>> This got me thinking. >> >>>> Heroku has environmental variables. So why not use an environmental >>>> variable to trigger a maintenance page? >> >>>> Maybe you can add a maintenance page to your site. >>>> e.g.: >> >>>> setup the blocker: >> >>>> config/routes.rb: (below Routes.draw but above the other entries) >>>> if ENV['MAINTAIN']=='true' >>>> map.maintain '*path', :controller => 'application', :action => >>>> 'show500' >>>> end >> >>>> -or- >>>> application_controller.rb >>>> if ENV['MAINTAIN']=='true' >>>> before_filter :show500 >>>> end >> >>>> and setup the renderer: >> >>>> app/controllers/application_controller.rb >>>> def show500 >>>> render :file => 'shared/maintain', :status => 500 >>>> false >>>> end >> >>>> To turn it on: >> >>>> heroku config:add MAINTAIN true >>>> The site will say "we'll be back soon" >>>> rake db:migrate >>>> other stuff >>>> heroku config:remove MAINTAIN >> >>>> Hope this meets your needs. >> >>>> I'll throw together a plugin when I get the chance. But long >>>> weekend >>>> suggests I'll have other things on my plate. >>>> --Keenan >> >>>> On Sep 1, 2009, at 2:25 PM, geolev wrote: >> >>>>> I think this would be great. Does anyone know how to do this? >> >>>>> On Aug 28, 2:52 am, Thomas Balthazar <[email protected]> >>>>> wrote: >>>>>> Hello, >> >>>>>> I'd like to know what would be the best way to put an application >>>>>> into >>>>>> maintenance state. >> >>>>>> I want to deploy a major update (code + db structure + data >>>>>> migration) >>>>>> on a Production app, and I'd like to be sure that users don't use >>>>>> the >>>>>> app while I'm deploying and testing. >> >>>>>> As far as I know, as soon as I run 'git push heroku', the app is >>>>>> deployed and the users are able to access it. >>>>>> The problem is that I haven't run 'heroku rake db:migrate' yet, >>>>>> so >>>>>> the >>>>>> app that is online right now doesn't work. >>>>>> Also, once I've run 'heroku rake db:migrate', I'd like to be able >>>>>> to >>>>>> test the app to be really sure everything is ok. >>>>>> But the users are already using the app and if I made a mistake >>>>>> and I >>>>>> want to rollback, I can't, since users are already using the >>>>>> new DB >>>>>> structure. >> >>>>>> I know I have to test the app so it doesn't happen, I also have a >>>>>> Staging app to test everything, but, you know, sometimes things >>>>>> still >>>>>> go wrong. >> >>>>>> So, what would be the best approach to achieve an application >>>>>> 'maintenance' state? >> >>>>>> Thanks for your suggestions. >> >>>>>> Best, >>>>>> Thomas. > > --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---
