Changing the way the world crowdfunds. For good.
- Rails 4.2
- Postgresql
- Redis (eventually)
- HTML/SASS
- Backbone/Marionette
- Vagrant
- AWS (OpsWorks, Ec2, RDS, etc)
- Pick out an issue on https://trello.com/b/qbGuSBuA/development. If the issue you are working on does not exist there, add it.
- Branch off of
develop
. If I am working on Trello issue 1, my branch might look like1_landing_page
. - Write the feature. Back-end code should be tested. Front-end code will not be tested until the UI matures.
- Run
rspec
. All tests should pass. - Run
rubocop
. All tests should pass. If you disagree with a style guideline, bring it up. Our rubocop config is still a work in progress. - Submit a PR. The semaphor build should pass.
- When the code is merged, it will automatically be deployed to int.billioneffect.com.
-
(Install VirtualBox)[https://www.virtualbox.org/wiki/Downloads]. Pick the version that matches your OS under the VirtualBox platform packages section.
-
(Install Vagrant)[http://www.vagrantup.com/downloads]. Pick the package that matches your OS.
-
cd
into the root of your lambda-api project directory. -
Run
vagrant up
. -
Go grab a coffee. This will provision you VM and take a while.
-
The VM is running an apache server - you can check out the site locally at
http://192.168.60.66/
. -
Start hacking!
This is by no means intended to be a conprehensive guide to all things Vagrant. If you want that, feel free to check out (the docs)[https://docs.vagrantup.com/v2/].
-
vagrant up
- This command creates and configures guest machines according to yourVagrantfile
. -
vagrant ssh
- This will ssh you into the vagrant VM. Your project directory will be kept in sync with the/vagrant
directory in your vagrant VM. Any changes you make in your project directory will be reflected in the vagrant VM and vice versa. -
vagrant halt
- This command shuts down the running machine Vagrant is managing. You'll want to do this when ypu are not actively developing Lambda. -
vagrant reload
- The equivalent of running avagrant halt
followed by avagrant up
.
I like to do all of my regular development directly in my project directory. I
ssh into the vagrant box and cd into the /vagrant
directory to run rake
tasks, bundle install
, rspec
, and rubocop
.