Commit e7097773d0f78999a48dcafc31fbe957908156e6
1 parent
b6dee2dd
Exists in
colab
and in
2 other branches
Add CONTRIBUTING and HACKING
Showing
2 changed files
with
90 additions
and
0 deletions
Show diff stats
| ... | ... | @@ -0,0 +1,84 @@ |
| 1 | +## Development | |
| 2 | + | |
| 3 | +### System dependencies (Ubuntu 14.04 package names) | |
| 4 | + - build-essential | |
| 5 | + - curl | |
| 6 | + - postgresql-server-dev-9.3 | |
| 7 | + | |
| 8 | +### Unpacked dependecies | |
| 9 | + - PhantomJS >= 1.9.2 (http://phantomjs.org/) | |
| 10 | + - *NOTE:* Just create sym links for that, for example: | |
| 11 | + | |
| 12 | + ```bash | |
| 13 | + cd /usr/local/share | |
| 14 | + wget https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-1.9.7-linux-x86_64.tar.bz2 | |
| 15 | + tar xjf phantomjs-1.9.7-linux-x86_64.tar.bz2 | |
| 16 | + sudo ln -s /usr/local/share/phantomjs-1.9.7-linux-x86_64/bin/phantomjs /usr/local/share/phantomjs | |
| 17 | + sudo ln -s /usr/local/share/phantomjs-1.9.7-linux-x86_64/bin/phantomjs /usr/local/bin/phantomjs | |
| 18 | + sudo ln -s /usr/local/share/phantomjs-1.9.7-linux-x86_64/bin/phantomjs /usr/bin/phantomjs | |
| 19 | + ``` | |
| 20 | + | |
| 21 | +### Ruby version | |
| 22 | + | |
| 23 | + `2.3.0` | |
| 24 | + | |
| 25 | + You can easily install it through the Ruby Version Manager - RVM. Instructions on how to do it can be found at http://rvm.io | |
| 26 | + | |
| 27 | + *NOTE:* If you are using the gnome-shell, or any derivate like terminator, you have to mark on your profile the option to use a "login bash". | |
| 28 | + | |
| 29 | + | |
| 30 | +### Environment setup | |
| 31 | + | |
| 32 | +- Gem installation: | |
| 33 | + - `bundle install` | |
| 34 | + | |
| 35 | +- Database creation: | |
| 36 | + - `rake db:create` | |
| 37 | + | |
| 38 | +- Database initialization (the seeds script will need the kalibro configurations service running): | |
| 39 | + - `rake db:setup` | |
| 40 | + | |
| 41 | +- Alternatively you can just run the setup script (it will also need the kalibro configurations service running): | |
| 42 | + - `bin/setup` | |
| 43 | + | |
| 44 | +### How to run the test suite | |
| 45 | + | |
| 46 | + `rake` | |
| 47 | + | |
| 48 | +### Services (job queues, cache servers, search engines, etc.) | |
| 49 | + | |
| 50 | +- _Kalibro Processor_ - [version 1.2.1](https://github.com/mezuro/kalibro_processor/archive/v1.2.1.zip). | |
| 51 | + You can find the latest changes directly on the [repository](https://github.com/mezuro/kalibro_processor). | |
| 52 | + By default Mezuro will expect it to be running on port 8082 at localhost. | |
| 53 | + In order to run it as expected, run on two different terminal instances: | |
| 54 | + | |
| 55 | + ```bash | |
| 56 | + RAILS_ENV=local rails s -p 8082 | |
| 57 | + RAILS_ENV=local rake jobs:work | |
| 58 | + ``` | |
| 59 | + | |
| 60 | +- _Kalibro Configurations_ - [version 2.1.0](https://github.com/mezuro/kalibro_configurations/archive/v2.1.0.zip). | |
| 61 | + You can find the latest changes directly on the [repository](https://github.com/mezuro/kalibro_configurations). | |
| 62 | + By default Mezuro will expect it to be running on port 8083 at localhost. | |
| 63 | + In order to run it as expected, run: | |
| 64 | + | |
| 65 | + ```bash | |
| 66 | + rails s -p 8083 | |
| 67 | + ``` | |
| 68 | + | |
| 69 | +### Deployment instructions | |
| 70 | + | |
| 71 | + Deployment is made through Capistrano (https://github.com/capistrano/capistrano) | |
| 72 | + | |
| 73 | + `cap production deploy` | |
| 74 | + | |
| 75 | + In order to do this, you must have the password. | |
| 76 | + | |
| 77 | + Otherwise, you can also modify the deployment file at <tt>config/deploy.rb</tt>. | |
| 78 | + | |
| 79 | +#### First Deploy | |
| 80 | + | |
| 81 | + 1. Make sure that the deployment file <tt>config/deploy.rb</tt> is correctly configured to the installation server; | |
| 82 | + 2. Also, make sure that the installation server already has rvm installed; | |
| 83 | + 3. <tt>cap deploy:setup</tt> will install the ruby correct ruby version, the gemset and all the directories tree; | |
| 84 | + 4. <tt>cap deploy:migrations</tt> deploys the code and run all the migrations | ... | ... |