After you have cloned this repo, run this setup script to set up your machine with the necessary dependencies to run and test this app:
% ./bin/setup
It assumes you have a machine equipped with Ruby, Postgres, etc. If not, set up your machine with this script.
After setting up, you can run the application using Heroku Local:
% heroku local
Local development has access to the following user roles:
Use the following guides for getting things done, programming well, and programming in style.
If you have previously run the ./bin/setup
script,
you can deploy to staging and production with:
$ ./bin/deploy staging
$ ./bin/deploy production
Our staging and production applications are deployed to Heroku.
We use the Heroku Scheduler addon to run our scheduling-focussed Rake tasks on a nightly basis.
Each night, the scheduler will run the following tasks:
pickups:schedule
- creates ScheduledPickup
rows for any active
zipcodes without pickups scheduled for the week. This task is idempotent.confirmations:request
- sends Confirmation Request emails to donors
associated with ScheduledPickup
s scheduled to occur within the next 48
hours.To geocode all locations that are missing latitude
or longitude
values:
$ rake locations:geocode