Over the time we received a lot of feedback on how the productivity of individual contributor increases if we they do not have to deal with systems and environment stuff (Dependency packages, confilicts due to multiple package manangers across multiple projects etc). So,we made a virtual box using Vagrant which has all the right dependency packages of the packages that are required for smooth development, testing and local deployment of Backend. In other words, all instructions mentioned in the docs for getting started will run smoothly.
Install Vagrant: Download link can be found at https://www.vagrantup.com/downloads.html
Download the Vagrant package.box file: Can be found here https://s3-us-west-2.amazonaws.com/feedmedia/package.box
Follow the instrucitons to login to virtual box
$ vagrant box add testbox package.box
(First time only)
$ vagrant init testbox
(First time only)
$ vagrant up
$ vagrant ssh
$ git config --global user.name "Your Name"
(First time only)
$ git config --global user.email youremail@xxx.com
(First time only)
Once you are inside the virtual box, you can proceed with the instructions avalable at https://github.com/RoboBrainCode/Docs/blob/master/README.md
Once you finish develpment and testing, you can issue vagrant shutdown
to exit the virtual environment. You can always comeback by using step 3.
Once you pull or clone the Backend repo, you need to do:
cd Backend/
git submodule init
git submodule update
Any time a change to any of the submodules is pushed to the Backend repo, you
need to do git submodule update
.
http://django-mongodb-engine.readthedocs.org/en/latest/topics/setup.html
sudo pip install git+https://github.com/django-nonrel/django@nonrel-1.5
sudo pip install git+https://github.com/django-nonrel/djangotoolbox
sudo pip install git+https://github.com/django-nonrel/mongodb-engine
sudo pip install djangorestframework
This will also install Django for you, further any Django project created will use MongoDB (and not the default sqlite3).
http://2buntu.com/articles/1451/installing-django-and-mongodb-in-your-virtualenv/
PS: There is no needs to setup virtualenv.
The script inside directory UpdateViewerFeeds runs as a cron job and balances the frontend feeds. Giving equal importance to all the projects. The script import the settings file mentioned in manage.py. So if you change the settings filename in manage.py, then accordingly modify the updateViewerFeed.py file.