Fork of the original bort base Rails app
Changes noted below.
If you have any suggestions for improvements then feel free to leave a request on User Voice
- Download and unzip Bort
- Edit the database.yml and the settings.yml files
- Changed the default password in the bort migration
- Edit the REST_AUTH_SITE_KEY in each of the environment files
- Rake db:migrate
- Have a brew and celebrate
Bort comes with a few commonly used plugins installed and already setup.
RESTful Authentication is already setup. The routes are setup, along with the mailers and observers.
Forgotten password comes setup, so you don’t have to mess around setting it up with every project.
The AASM plugin comes pre-installed. RESTful Authentication is also setup to use user activation.
Bort now comes with Role Requirement by Tim Harper. A default
admin role is predefined along with a default admin user. See the migrations for the admin login details.
Open ID Authentication
Bort, as of 0.3, has Open ID integrated with RESTful Authentication. Rejoice!
Plugins new to this fork
We use will_paginate in pretty much every project we use, so Bort comes with it pre-installed.
Rspec & Rspec-rails
You should be testing your code, so Bort comes with Rspec and Rspec-rails already installed so you’re
ready to roll.
Note: Shoulda is installed as the preferred test framework. Rspec is used for pre-existing models/controllers (e.g. Users and Roles)
Hoptoad Exception Notifier
You don’t want your applications to crash and burn so Exception Notifier is already installed to let
you know when everything goes to shit.
load times and saves you bandwidth.
Gems new to this fork
New Relic RPM
By default, the gem is included.
If you do not have a free account, signup here: https://rpm.newrelic.com
After signing-up, replace
config/newrelic.yml with the file they provide for your account here
The routes for RESful Auth and the forgot password stuff are already sorted for you.
There is a settings.yml file that contains site-wide stuff. The site name, url and admin email are all used
in the RESTful Auth mailers, so you don’t need to worry about editing them.
The database.yml defaults to sqlite3 but also contains the settings for MySQL in comments so you can switch
Rake tasks are contained in the limerick_rake gem.
- bootstrap (Provides rake tasks for loading data into the database. These are used for an initial application dataset needed for production.)
- capistrano (Standard capistrano deployment tasks)
The basic test setup uses Test::Unit, Shoulda, factory_girl, and mocha, and includes some standard “shoulda macros” that we’ve used on various projects.
Factory Girl is a fixture replacement library, following the factory pattern. Place your factories in test/factories.rb. The fixture directory has been removed, as fixtures are not used.
Shoulda is a pragmatic testing framework for TDD and BDD built on top of Test::Unit. A number of additional testing macros are provided in test/shoulda_macros:
Bort comes ready to rock capistrano. The recipe that is setup is based on using git and passenger. It’s ready
to go with multistage deployments. It deploys to the production config by default, so if you don’t need it
you can ignore it. Just update config/deploy/production.rb with your deployment settings.
More info on capistrano-ext/multistage deployments can be found here: http://weblog.jamisbuck.org/2007/7/23/capistrano-multistage
Deployment is done using capistrano, and deploys to a Passenger (aka mod_rails), running under Apache.
Rake tasks are provided for managing git branches which the different environments pull from for deploy.
To push the git master to git staging branch run:
rake git:push:staging </pre>
To push the git staging branch to production branch run:
rake git:push:production </pre>
Setup your deployment environment by running:
cap ENVIRONMENT deploy:setup </pre>
You’ll be prompted for the environment’s database password
Deploy to the desired environment by running:
cap ENVIRONMENT deploy </pre>
The default environment for deploy is staging, to deploy to staging, just run:
cap deploy </pre>
Uses the Database for Sessions
Bort is setup to use the database to store sessions by default.
- password and password_confirmation are set up to be filtered
- there is a default application layout file
- a page title helper has been added
- index.html is already deleted
- rails.png is already deleted
- a few changes have been made to the default views
- a default css file with blank selectors for common rails elements
Bort put together by people at Fudge