As a project designed for Scav, the Scav AI policy also applies.
AI. Don’t use it
- Postgres is required as a development database. If you do not want to install the database, it's also possible to run in docker. Running in docker is recommend for running the test suite in parallel to speed up test runs.
- Ruby on Rails (set-up guide here)
- Run
bundle install(bundler is installed by ruby) to install dependencies - Create a new database in postgres and copy
config/database.sample.ymltoconfig/database.yml. Update the placeholder values appropriately. Load the database schema in from scavinator-database. - Copy
config/storage.sample.ymltoconfig/storage.yml - Set-up your system DNS to point
scavinator.testand any of its subdomains you need to127.0.0.1. This project uses subdomains as a part of its routing decisions so having DNS configured is a requirement.
Example /etc/hosts for linux/MacOS:
127.0.0.1 scavinator.test
127.0.0.1 example.scavinator.test
127.0.0.1 test.scavinator.test
127.0.0.1 dev.scavinator.test
Run bin/rails server and visit the site in your browser at http://scavintor.test:3000. Create a test team with the same prefix as you've configured in DNS.
Run bin/rails test. If you do not have databases configured for parallel testing, set the environment variable PARALLEL_WORKERS=1.