THIS REPOSITORY IS NO LONGER MAINTAINED - RMS is now hosted internally, reach out to the coordinators for more information
RMS is a web based application written in rails. It was first uesd by the University of Waterloo's Campus Response team to schedule first aid responders for shifts. It allows administrators to create, edit and delete shifts, and it allows users to take shifts given that they meet certain criteria. The numbers of hours each user has completed is automatically tracked.
Writing shift program
"Cannot find object named 'shit'"
Oh man not again!
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.
Install ruby 2.6.0
brew install ruby
Finally install PostgreSQL.
On Mac:
brew install postgresql
Next clone this repository
git clone https://github.com/uwcrt/Real-Magic-Scheduler-update.git
Then install the necessary gems
bundle install
Start PostgreSQL:
brew services start postgresql
Create a postgres user
/usr/local/opt/postgres/bin/createuser -s postgres
And create your database
rake db:create:all
rake db:migrate
Finally to use the app manually create your first admin user
rails console
u = User.create username: "...", first_name: "...", last_name: "...", admin: true
At this point you should be able to start a server locally
rails server
bundle exec rspec spec
Submit a pull request to deploy to the production Heroku server.
There should not be any mandatory environment variables. The app should run fine with zero configuration.
- NOTIFICATION_BACKOFF - The minimum amount of time between new shift emails. Default to 3.hours
- TZ - The timezone that the app is running in. Defaults to 'UTC'
- SENDGRID_USERNAME - The sendgrid username used to send emails, no default. Email will not send without this
- SENDGRID_PASSWORD - The sendgrid password used to send emails, no default. Email will not send without this
- WEB_CONCURRENCY - The number of unicorns to run concurrently. Defaults to 3
- SCHEDULER_EMAIL - The Director of Scheduling's email address
- SHIFT_SIGN_OUT - The link to the shift sign out form (link is not displayed if unset)
Features are being tracked on story board here