Skip to content
Adrián Pardini edited this page Dec 21, 2016 · 7 revisions

Autotune is a Rails engine that you can use in your own app.

You'll need to setup a new Rails app to start using Autotune. First follow the prereqs installation instruction to ready your dev environment.

It is written to run on Unix systems, there is no intention to support Windows.

Prereqs

On Mac OS X, we recommend using homebrew. Please follow the instructions to setup your dev environment.

Once homebrew installation is complete, install some things:

brew update
brew install redis sqlite

Ruby 2.2.2

Autotune is developed against Ruby 2.2.2 Mac OS X Yosemite ships with ruby 2.0. Autotune may run on ruby 2.0. I tried it once and it did.

The best way to get setup is to use a ruby manager such as rvm, rbenv, or chruby. You may also be able to install a new ruby via your package manager.

On Mac OS X:

brew install ruby-build rbenv

Brew will show some instructions to finish rbenv setup. Please follow them. Once you finish that start a new terminal session. From there run:

rbenv install 2.2.2
rbenv global 2.2.2

And start a new terminal session.

Autotune setup

With prerequisites installed, install the rails gem (you may have to sudo):

gem install rails -v "< 5"

Then create a new rails app:

rails new autotune_app -m https://raw.githubusercontent.com/voxmedia/autotune/master/rails_template.rb

Now your autotune rails project is ready to go.

To start the server, run the following

cd autotune_app
bundle exec foreman start

The site will be running at http://localhost:3000.

Issues when running using rvm:

If your build or upgrade jobs fail with an error like

Could not find 'bundler' (>= 0) among 14 total gem(s)

add the following to config/initializers/autotune.rb:

  if ENV['GEM_PATH']
    conf.setup_environment['GEM_PATH'] = ENV['GEM_PATH']
    conf.build_environment['GEM_PATH'] = ENV['GEM_PATH']
  end

  if ENV['GEM_HOME']
    conf.setup_environment['GEM_HOME'] = ENV['GEM_HOME']
    conf.build_environment['GEM_HOME'] = ENV['GEM_HOME']
  end

Please bear in mind that this might interfere with blueprints that have their own Gemfiles.

Next up