Instantly share code, notes, and snippets.

@rheinwein rheinwein/
Last active Sep 26, 2015

What would you like to do?
ROSSConf Contribution Guide

#Ruby Open Source Projects for ROSSConf


Clone the repo, then point bundler to your branch in the Gemfile. Run bundle install and then you're ready to test the gem by running it within the context of bundler to avoid conflicts -- bundle exec bin/flatcar. Flatcar is tested with rspec, and you can find a test coverage report via simplecov-rcov.

##Lorry (the API) (the front-end Rails project)

Check out the development guide for instructions on setup


The UI runs as a normal Rails application on port 3000. It does not need to run in a container. The API project, however, does. It relies on Fleet and a connection to the Docker daemon in order to schedule and execute jobs.

Check out the contribution guide for more info on contributing to Panamax.

I recommend cloning the API and UI repos to a parent panamax directory, and also cloning the coreos-vagrant repository from me.

Edit line 79 in coreos-vagrant/config.rb to sync you panamax-api directory to the Vagrant box.

vagrant up && vagrant ssh sudo systemctl start etcd && sudo systemctl start fleet docker run -it -v /var/panamax-api:/var/panamax-api -v /var/run/docker.sock:/run/docker.sock -v /run/fleet.sock:/var/run/fleet.sock -p 8888:8888 centurylink/ruby-base /bin/bash

Then, you'll be dropped into a bash session inside of your container. Run apt-get update && apt-get install libsqlite3-dev, bundle install, bundle exec rake db:setup && bundle exec rake panamax:load:templates.

Then it's time for rails s -p 8888!

Make sure to forward port 8888 from the CoreOS VM to your localhost. For the API, we'll be making two hops: one from containter to VM, and one from VM to localhost.

VBoxManage modifyvm "VM name" --natpf1 ",tcp,,8888,,8888"

###All issues, bugs and feature requests are welcome!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment