.. index:: installation ======= Install ======= Working Environment =================== You have several options in setting up your working environment. We recommend using virtualenv to separate the dependencies of your project from your system's python environment. If on Linux or Mac OS X, you can also use virtualenvwrapper to help manage multiple virtualenvs across different projects. .. index:: virtualenv Virtualenv Only --------------- First, make sure you are using `virtualenv`_. Once that's installed, create your virtualenv: .. code-block:: sh $ virtualenv --distribute gvapgsql .. _virtualenv: https://virtualenv.pypa.io/en/latest/ You will also need to ensure that the virtualenv has the project directory added to the path. .. index:: virtualenvwrapper Virtualenv with virtualenvwrapper ------------------------------------ In Linux and Mac OSX, you can install `virtualenvwrapper `_, which will take care of managing your virtual environments and adding the project path to the `site-directory` for you: .. code-block:: sh $ mkdir gvapgsql $ mkvirtualenv -a gvapgsql gvapgsql-dev $ cd gvapgsql && add2virtualenv `pwd` .. index:: pip, requirements, dependencies Installation of Dependencies ============================= Depending on where you are installing dependencies: In development: .. code-block:: sh $ pip install -r requirements/local.txt For production: .. code-block:: sh $ pip install -r requirements.txt .. index:: celery, worker, file queue Running the Celery worker ========================= gvapgsql uses the `Celery`_ distributed task queue system. The gvapgsql logic is executed by a celery worker. After all dependencies are installed you can go into the gvapgsql directory and run the celery worker with: .. code-block:: sh $ cd gvapgsql $ celery -A gvapgsql worker -Q pgsql -l info .. _Celery: http://www.celeryproject.org/