This is the simple application that we're using to build the CFP platfrom for Euruko 2013. It's simple purpose is to collect talk proposals, and try to channel feedback and suggestions on those proposals into useful forms.
This app is build on top of Ruby Manor 3 original Vestibule app and we thank them for that!
- Setup a Postgres server. The simplest thing to do is to download the Turnkey Postgres Appliance in the OVF format and run it with VirtualBox.
- Copy config/database.example.yml to config/database.yml and update it appropriately
- Copy config/application.example.yml to config/application.yml and customize it to fit your needs
- Set the following environment variable:
COOKIE_SECRET
with a lengthy key - Run the tests:
rake
- Register the app for the "social login" thing. See section below for more info.
- Start a server:
rails server
You should be ready :)
Github:
- Go to settings/applications and add a new application
- Set URL to whatever makes sense (for example
http://localhost:3000
if it's for your dev environment) - Set Callback URL to
<base_url>/auth/github/callback
(so for this example it would behttp://localhost:3000/auth/github/callback
) - Set the
GITHUB_KEY
and theGITHUB_SECRET
to theClient ID
and theClient Secret
respectively - (Optional) Set these for heroku (after having completed the heroku setup) by running
heroku config:add GITHUB_KEY=<the Client ID>
andheroku config:add GITHUB_SECRET=<the Client Secret>
Twitter:
- Go to "create a new application"
- Set the Website to whatever makes sense (as with Github)
- Set Callback URL to
<base_url>/auth/twitter/callback
(so for this example it would behttp://localhost:3000/auth/twitter/callback
) - Set the
TWITTER_KEY
and theTWITTER_SECRET
to theConsumer key
and theConsumer secret
respectively - (Optional) Set these for heroku (after having completed the heroku setup) by running
heroku config:add TWITTER_KEY=<the Consumer key>
andheroku config:add TWITTER_SECRET=<the Consumer secret>
Google:
Nothing to do, it should just work :)
Facebook:
- Go to create a new application
- Set the Website with Facebook Login ->
Site URL
to<base_url>/auth/facebook/callback
(so for this example it would behttp://localhost:3000/auth/facebook/callback
) - Set the
FACEBOOK_KEY
and theFACEBOOK_SECRET
to theApp ID
and theApp Secret
respectively - (Optional) Set these for heroku (after having completed the heroku setup) by running
heroku config:add FACEBOOK_KEY=<the App ID>
andheroku config:add FACEBOOK_SECRET=<the App Secret>
- Sign up on Heroku
- Download the Heroku toolbelt
- Login from the command line:
heroku login
- Create your heroku app:
heroku create
- Add the New Relic add on (requires credit card information):
heroku addons:add newrelic:standard
- Switch to your own branch (or in EuRuKo 2013 case, the
euruko2013
branch) and un-ignore theconfig/application.yml
since heroku needs this - Deploy:
rake release
- Check the app:
heroku open
For more info, checkout the official heroku guide
There are two ways to send emails out of the box: Gmail and Mandrill. The first is pretty much ubiquitous, the latter is the easiest to setup on Heroku. In any case you have to set first the following environment variables:
DEFAULT_MAILER_HOST
which will be used as the:host
option for theaction_mailer.default_url_options
SMTP_DOMAIN
which will be used as the:domain
option for theaction_mailer.smtp_settings
Setup Gmail
Set up the additional two environment variables:
GMAIL_SMTP_USER
GMAIL_SMTP_PASSWORD
Setup Mandrill
Just add the Mandrill Heroku Addon and you should be ready to go.
Keep in mind that this will work only on production environment.
Sign up for a free account bugsnag account and set the appropriate env variable: heroku config:add BUGSNAG_API_KEY=XXXXXXXXXXXXXXXXXXXXXX
Contact @nikosd
Fork, patch, test, send a pull request. Branches should be based on master
and not euruko2013
with the exception of EuRuKo 2013 specific stuff.