Tim Molendijk wrote:
> Hi all,
> 
> I need some advice and experiences on building and deployment of web
> apps in Python (and Django).
> 
> We at PromoBee.nl are nearing the release of our new web app. It will
> be installed on a fresh server install, which makes for a nice
> opportunity to rethink our build and deployment process. Up to this
> point we solved deployment with some custom shell scripts and a lot of
> manual work. Since I (obviously) do not want to go down this road
> again I have done some research lately and although I have come up
> with some ideas it appears to me that there is no 'common best
> approach'.
> 
> My current considerations:
> Since the server will run Debian I really like the idea of using
> Debian packages for installing and updating the web app and its
> libraries. I don't have any experience with building my own packages
> but I figure it should be a feasible approach. Then how am I going to
> build these packages? I have taken a look at Ant, but I'm afraid to
> end up in Java- or XML-hell. Also, since our app is a Python app, I
> feel there should be a tool that is better suited for the job. I
> considered Distutils, but I am not sure whether it's capable of
> everything I need. Our app has a fairly simple architecture and its
> deployment is quite straight-forward, but at least I want to be able
> to do stuff like checking out code from source control and automated
> concatenation and minification of JavaScript files. Also I have been
> looking at zc.buildout, but I find it hard to get a grasp of what it
> can and cannot do. In addition to that; I am not confident that either
> Distutils or zc.buildout will get along easily with the concept of
> Debian packages.
> 
> Well, all in all a lot of question marks here. Since the problem is so
> common I figured many people here must have dealt with it as well. I'm
> really curious about how you solved it.

Ik zou pas met debian packages beginnen te werken als je de software op
meerdere plekken wilt installeren en onderhouden. Op deze manier kan je
dan ook zelf een eigen debian repository opzetten en eventuele updates
op deze manier uit rollen. Volgens mij is een makkelijkere manier om je
django website te deployen via bijvoorbeeld SVN. Je doet een checkout
van een tag of de trunk op je productiesysteem.

De django website zelf staat ook in de svn, volgens mij checken ze deze
uit op een ontwikkelmachine en doen wat ontwikkeling, committen naar
svn, testen op test machine en daarna checkout op productie. Django is
flexibel genoeg om dit alleen met deze acties je website te kunnen deployen.

 * http://code.djangoproject.com/browser/djangoproject.com

Kortom; packages zijn mooi, maar om alles in een package te stoppen is
een beetje overdreven.

 - gijs


Attachment: signature.asc
Description: OpenPGP digital signature

_______________________________________________
Python-nl mailing list
Python-nl@python.org
http://mail.python.org/mailman/listinfo/python-nl

Antwoord per e-mail aan