Answer the question
In order to leave comments, you need to log in
Build, Continuous Integration, Deploy in python projects?
The question is what tools are accepted and convenient to use to build python projects, what CI is preferred by the python developer community, what is used to deploy code to servers.
The experience of web projects is more interesting, but I will be glad to see examples from other areas.
Answer the question
In order to leave comments, you need to log in
They use virtualenv and pip
to deploy their web projects to the server . Dependencies are usually listed in a pip file.
at the same time, project deployment is reduced to a set of commands:
The code that launches the project on a production server must take into account the presence of a virtual environment. If you use Apache and wsgi, this describes how the script should look.
Why all these dances with virtualenv?
All this is necessary so that several projects with different versions of dependent programs can work quietly on the same server. (for example, each project may have its own version of django)
svn\git clone to <proj_dir>
virtualenv <env_dir>
source <env_dir>/bin/activate
pip install -r <proj_dir>/requrements.pip
For "assembly" I use buildout. Compared to virtualenv, you have to do fewer actions by hand, everything is more or less standardized.
I don't use anything for CI yet. :( I run tests by hand before pushing to the repository.
hg -> project tree with a solid YAML-based configuration -> python-doit tasks -> nose tests -> packaging (python-doit) -> fabric deployment -> version update && data migration (python-doit).
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question