Mac OSX 10.11+
This page provides instructions on installing Autolab for development on Mac OSX 10.11+. If you encounter any issue along the way, check out Troubleshooting.
Follow the step-by-step instructions below:
Install one of two database options
Install rbenv (use the Basic GitHub Checkout method)
Install ruby-build as an rbenv plugin:
git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build
Restart your shell at this point in order to start using your newly installed rbenv
Clone the Autolab repo into home directory and enter it:
cd ~/ git clone https://github.com/autolab/Autolab.git && cd Autolab
Install the correct version of ruby:
rbenv install $(cat .ruby-version)
At this point, confirm that
rbenvis working (you might need to restart your shell):
$ which ruby ~/.rbenv/shims/ruby $ which rake ~/.rbenv/shims/rake
Note that Mac OSX comes with its own installation of ruby. You might need to switch your ruby from the system version to the rbenv installed version. One option is to add the following lines to ~/.bash_profile:
export RBENV_ROOT=<rbenv folder path on your local machine> eval "$(rbenv init -)"
gem install bundler rbenv rehash
Install the required gems (run the following commands in the cloned Autolab repo):
cd bin bundle install
Refer to Troubleshooting for issues installing gems
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" brew install --HEAD universal-ctags/universal-ctags/universal-ctags
which ctagsto ensure that the package lies on your
PATHand can be found.
Initialize Autolab Configs
cp config/database.yml.template config/database.yml cp config/school.yml.template config/school.yml cp config/autogradeConfig.rb.template config/autogradeConfig.rb cp config/lti_settings.yml.template config/lti_settings.yml
school.ymlwith your school/organization specific names and emails.
database.ymlwith the correct credentials for your chosen database. Refer to Troubleshooting for any issues and suggested development configurations.
lti_settings.ymlif you are intending on integrating your instance of Autolab with an LTI Advantage Platform. See LTI Integration Setup for more information.
Create a .env file to store Autolab configuration constants.
cp .env.template .env
If you have not installed Tango yet, you do not need to do anything else in this stage. If you have already installed Tango, you should make sure to fill in the
.envfile with values consistent with Tango's
Initialize application secrets.
Create and initialize the database tables:
bundle exec rails db:create bundle exec rails db:migrate
Do not forget to use
bundle execin front of every rake/rails command.
Create initial root user, pass the
-dflag for developmental deployments:
# For production: ./bin/initialize_user.sh # For development: ./bin/initialize_user.sh -d
Populate dummy data (for development only):
bundle exec rails autolab:populate
Start the rails server:
bundle exec rails s -p 3000
Go to localhost:3000 and login with either the credentials of the root user you just created, or choose
Install Tango, the backend autograding service. Information on linking Autolab to Tango can be found on this page as well.
If you would like to configure Github integration to allow students to submit via Github, please follow the Github integration setup instructions.
Now you are all set to start using Autolab! Please fill out this form to join our registry so that we can provide you with news about the latest features, bug-fixes, and security updates. For more info, visit the Guide for Instructors and Guide for Lab Authors.