A lot of work still needs to be done but the current version of the application already serves its purpose for me and my 14 colleagues. I created a list of issues I hopefully will be able to resolve soon.
A demo installation is available at Heroku
The system is available for testing and will be cleared frequently
Requirements:
All necessary configuration can be done through environment variables so you can easily deploy the application to heroku without any code changes necessary
export SMTP_SERVER="smtp.example.com"
export SMTP_PORT="465"
export SMTP_DOMAIN="example.com"
export SMTP_USER_NAME="myuser@example.com"
export SMTP_PASSWORD="topsecretpassword"
export SMTP_AUTHENTICATION="login"
export SMTP_SSL="true"
export MAIL_FROM="noreply@example.com"
export MAIL_HOSTNAME="timetracking.example.com"
export SECRET_KEY_BASE="TOPSECRETTOPSECRETTOPSECRETTOPSECRETTOPSECRETTOPSECRET"
export DEVISE_SECRET_KEY="TOPSECRETTOPSECRETTOPSECRETTOPSECRETTOPSECRETTOPSECRETTOPSECRET"
See database.yml on how exactly the configuration values are used. Run bundle install to install without the heroku (e.g. postgres) or mysql dependencies:
bundle install --without heroku
export DATABASE_TYPE="mysql"
export DATABASE_NAME="timetracking"
export DATABASE_USERNAME="timetracking"
export DATABASE_PASSWORD="timetracking"
export DATABASE_HOST="localhost"
export DATABASE_PORT="3306"
export DATABASE_TYPE="pg"
export DATABASE_URL="postgres://user:pass@host:5432/database"
export COMPANY_NAME="TT Ltd"