Criando um ambiente de staging no heroku para nossa rails app
Criado em: 21/11/2013
É uma boa prática termos um ambiente que rode no heroku, mas que não seja o ambiente de produção, este ambiente é chamado de staging, um ambiente que é o mais proximo de produção.
Primeiro temos que criar uma app de staging no heroku, dado que nossa app tenha o nome de myapp
crie uma heroku app com o nome de myapp-staging
para isto podemos utilizar do heroku fork
.
Primeiro temos que dizer ao rails que temos um ambiente de staging para isso temos que criar o config/environments/staging.rb
. Simplesmente cria o arquivo config/environments/staging.rb
com o mesmo conteúdo do config/environments/production.rb
apenas trocando o log_level
para :debug
.
No heroku agora utilizamos a gem rails_12factor
, no entanto ele apenas recomenda o uso em :production
, devemos incluir o nosso ambiente de staging aqui também no nosso Gemfile.
Como este ambiente é um ambiente para apenas os usuários que desejamos visualizar, como os colaboradores do nosso sistema, colocamos um basic auth apenas no ambiente de staging.
Para finalizar definimos as variaveis de ambiente no heroku, devemos definir o RACK_ENV
e o RAILS_ENV
.
Caso estejamos utilizando serviços como Amazon S3, Facebook etc. É uma boa pratica termos um bucket exclusivo de staging no caso da S3 e uma app do facebook para staging, assim como qualquer outro serviço que estejamos utilizando.
Adicione as variaveis de ambiente destes serviços como S3(AMAZON_S3_BUCKET
, AMAZON_ACCESS_KEY_ID
, AMAZON_SECRET_ACCESS_KEY
), Facebook(FACEBOOK_APP_KEY
, FACEBOOK_APP_SECRET
) e qualquer outra variável de ambiente necessária para a sua app funcionar.
Deste modo temos uma app que é bem próxima de produção, assim reduzimos a chance de termos alguma surpresa desagradável.
Comentários
Comentários powered by Disqus