ok pas pire
authorOlivier Larchevêque <olivier.larcheveque@auf.org>
Thu, 12 Sep 2013 21:18:45 +0000 (17:18 -0400)
committerOlivier Larchevêque <olivier.larcheveque@auf.org>
Thu, 12 Sep 2013 21:18:45 +0000 (17:18 -0400)
README.rst
deploy.py
requirements.txt [deleted file]

index bb1718b..0afd959 100644 (file)
@@ -35,6 +35,6 @@ Déploiement du projet
 Développement du projet
 =======================
 
-* python deploy.py requirements/developements.txt
+* python deploy.py developments
 
 * python manage.py runserver --settings=settings.development
index c83f059..400a132 100644 (file)
--- a/deploy.py
+++ b/deploy.py
@@ -9,11 +9,14 @@ PYTHON = "python2.6"
 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', '')
@@ -39,11 +42,7 @@ def setup_venv():
         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" %
@@ -60,7 +59,25 @@ def cleanup():
             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()
diff --git a/requirements.txt b/requirements.txt
deleted file mode 100644 (file)
index ea77c2d..0000000
+++ /dev/null
@@ -1 +0,0 @@
--r requirements/production.txt