You are writing a comment about Deploying Django with Fabric, here is a quick summary:
A look at how to manage deployment complexity with Django using Fabric. Something of a continuation on the post from yesterday.
You are responding to this comment written by JJ on November 6th 2008, 13:21.
The design of fabric is broken from the start if you have to interpolate strings inside of commands that are going to be run via the shell.
run("ls $(dir)")
As soon as "dir" has any shell meta-characters in it you are dead in the water.
I don't know why commands aren't built up and executed as lists the way they should be. execve() takes a list and the python language supports lists - it seems like a no-brainer to design an API that runs commands around lists to avoid this problem all together. But time and time again you get an API built around strings.
These are problems waiting to happen.
Please be aware that comment forms go stale after one hour.
Comments may make use of LifeFlow MarkDown. Raw html will be escaped.
Quick Introduction to LifeFlow MarkDown Syntax
A highlighted code block:
Other common languages work as well: scheme, python, java, html, etc.
Other markdown syntax: