> Hi, I wanted to propose a new possible feature in Django project that
> allows to sync the local folder with the remote one of the server
> defining all the configuration directly in settings.py.
Hi Filippo,
I'm not convinced we can build a sufficiently useful and generic solution on this basis. For instance, many people prefer going through a (D)VCS rather than copying files directly between the development and production machines — it becomes necessary as soon as there's more than one developer.
Furthermore, it's a different kind of program (systems administration, not web development) and there's no advantage to tie it to manage.py.
For these reasons, it don't think it's a good idea to include this feature in Django.
Standalone tools such as Fabric are designed just to address this problem space; you can probably find one that will suit your needs.
Thanks for the suggestion anyway!
--
Aymeric Augustin.
Hi,
I won't use rsync. Code should not be altered on the server but sometimes you (or someone else) does
it. Rsync would overwrite it. Up to now I use unison, but there are better solutions.
I would like to see a common variable in django's settings:
STAGE=...
with one of this choices: DEV, INTEGRATION, QUAL, PROD
It would be nice, if the django core could agree on a variable name and its content.
Several deploy apps could use this common variable.
In our company we have a common variable. PROD is zero:
if STAGE:
# some dev system...
--
Thomas Guettler, http://www.thomas-guettler.de/
E-Mail: guettli (*) thomas-guettler + de
I honestly think that trying to integrate any sort of deployment
features in django will only please the few people who use that
particular method of deploying code, and irritate the majority who do
it in a different manner. There is no 'correct' way of doing this, and
trying to find a correct way inside of django itself will only lead to
constant bike-shed discussions.
If you are interested in improving deployment, I suggest that
initially this is done outside of django. Once it is clear that your
solution is THE standard, then the discussion about bringing it inside
of django can begin (qv South).
FYI at $JOB would never countenance a deployment using
rsync/unison/scp/whatever. Each deployment is a fresh, unmodified
checkout from a specific tag/branch of an RCS, and we never update a
checkout - a completely fresh deployment is rolled for each update.
The correct settings for each backend are baked in from the RCS, and
are specific to each backend.
Cheers
Tom
absolutely.
I myself deploy Django apps in at least three different ways, each one
for different situations. choosing any one as _the_ official, and
replacing the others would be a downgrade for most cases.
of course, it could be done; it might even be easier for me. but it's
not what i've chosen.
--
Javier