We'll use SQLite3 in development.
Clone the repository, then run:
bundle install &&
cp db/monster_demo db/monster_development &&
bundle exec rake db:test:prepare &&
bundle exec rails s
You need to create an application on Heroku.
First, you'll need a heroku account. Sign up for one if you don't have one.
You'll also need to add your public key to your heroku account. Go to the account page and look for the section called SSH keys.
For more on this, check out the Managing Your SSH Keys section of the heroku documentation.
Then, from within the project directory:
heroku create && git push heroku master
Open the store_config.rb
in the root project directory and:
- Change the production URL to match the URL of your heroku deployment
- Change your email address to the one you used to register for this session
Let's get all our base data running on Heroku:
heroku addons:add pgbackups
heroku pgbackups:restore DATABASE
'https://raw.github.com/JumpstartLab/store_demo/master/db/monster_development.pgdump'
You'll need phantom.js to run the test suite locally:
brew install phantomjs
After getting your Heroku app up and running, fork this repo and set up a remote for it:
git remote rm origin
git remote add upstream git://github.com/JumpstartLab/store_demo.git
git remote add origin git@github.com:YOURNAME/store_demo.git
Then visit https://travis-ci.org. From there:
- Sign in with your GitHub account
- Visit https://travis-ci.org/profile
- Flip the switch to
ON
on your forked store_demo repo
In your app, open store_config.rb
, and change the values of production_url
and email_address
to your Heroku app URL and your email address:
def self.production_url
"http://my-demo-store.herokuapp.com"
end
def self.email_address
"me@example.com"
end
Push the updated store_config.rb
to GitHub, and Travis will automatically run a set of timed tests against the specified URL. Once complete, you'll see a line at the bottom of your Travis logs that looks like this:
Runtime of 53.319523 submitted for me@example.com
This number gets sent off to Jumpstart Lab for scoring. Here's our performance goals for the night:
- Baseline performance: 50 seconds
- Bronze Performance: 42 seconds
- Silver Performance: 30 seconds
- Gold Performance: 15 seconds
Go for the gold!
First edit the Gemfile
to uncomment the pg
line, and comment out the
sqlite3
line.
bundle install
cp config/database.postgresql.yml config/database.yml
createuser -sdR monster
createdb -O monster monster_development
psql -U monster -d monster_development -f db/monster_development.pgdump
bundle exec rake db:test:prepare
bundle exec rails s
View the website at localhost:8080.
brew update
brew install phantomjs
Frank's Monsterporium has the best selection, nay, the ONLY selection of Frank's awesome creations on the web.
This project was created for the gSchool StoreEngine Project. The background for this project can be found at: http://tutorials.jumpstartlab.com/projects/store_engine.html