ROOT_DIR = os.path.abspath(os.path.dirname(__file__))
VENV_DIR = os.path.join(ROOT_DIR, '.virtualenv')
+sys.path.append(os.path.join(ROOT_DIR, 'xxx'))
+
def shell_exec(cmd):
"""
Run blocked shell command.
"""
+ print u"(*) %s" % cmd
sp = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE)
sp.wait()
out = sp.stdout.read().replace('\n', '')
print u"VirtualEnv already exists. Nothing to do."
-def setup_dependances():
- if len(sys.argv) > 1:
- requirement_file = sys.argv[1]
- else:
- requirement_file = 'requirements.txt'
+def setup_dependances(requirement_file):
print u"Deps installation %s." % requirement_file
shell_exec(
"%s/bin/pip install -r %s" %
os.remove(f)
+def setup_django(settings_module):
+ print u"Run django commands with '%s' settings" % settings_module
+ manage = "%s/bin/python manage.py" % VENV_DIR
+ settings = "--settings=%s" % settings_module
+ shell_exec("%s syncdb %s --noinput" % (manage, settings))
+ shell_exec("%s migrate %s" % (manage, settings))
+ shell_exec("%s collectstatic %s --noinput" % (manage, settings))
+
+
if __name__ == "__main__":
+
+ if len(sys.argv) > 1:
+ requirement_file = 'requirements/%s.txt' % sys.argv[1]
+ settings_module = 'settings.%s' % sys.argv[1]
+ else:
+ requirement_file = 'requirements/production.txt'
+ settings_module = 'settings.production'
+
setup_venv()
- setup_dependances()
+ setup_dependances(requirement_file)
+ setup_django(settings_module)
cleanup()