sbin/sync/fabfile.py
changeset 193 a2c100af4e89
parent 173 8b881fb925ef
child 244 4f07ad576fee
--- a/sbin/sync/fabfile.py	Wed Jul 23 17:51:23 2014 +0200
+++ b/sbin/sync/fabfile.py	Wed Jul 30 03:16:55 2014 +0200
@@ -1,12 +1,16 @@
-from fablib import (export_version, do_sync_web, create_config, 
-    clean_export_folder, do_sync_comp, sync_install_build, do_create_virtualenv, 
-    clean_rsync_folder, rsync_export, get_comp_versions_dict, SyncComp, 
+import imp
+import os.path
+
+from fablib import (export_version, do_sync_web, create_config,
+    clean_export_folder, do_sync_comp, sync_install_build, do_create_virtualenv,
+    clean_rsync_folder, rsync_export, get_comp_versions_dict, SyncComp,
     do_relaunch_server)
 from fabric.api import task, env
 from fabric.colors import green
-import config #@UnusedImport
-import imp
-import os.path
+from fabric.tasks import execute
+
+import config  # @UnusedImport
+
 
 @task
 def relaunch_server(do_collectstatic=True, do_syncdb=True, do_check_folder_access=True):
@@ -62,7 +66,7 @@
     relaunch_server()
 
 @task
-def create_virtualenv(version):
+def create_virtualenv(version, add_dep='no'):
     print(green("create virtualenv with version %s" % version))
     export_path = export_version(web=version)
     export_path_web = os.path.join(export_path,'web')
@@ -73,6 +77,10 @@
         venv_remote_export_path = os.path.join(env.remote_path['venv_export'], env.export_prefix, version,"virtualenv")
         rsync_export(virtualenv_path, venv_remote_export_path, env.rsync_filters['venv'])
         do_create_virtualenv(venv_remote_export_path, env.remote_path['virtualenv'])
+        
+        if add_dep and add_dep.lower()[0] == 'y':
+            for sync_name in [key for key in env.repos if key != 'web']:
+                execute("sync_"+sync_name, version)
     finally:
         clean_export_folder(export_path)
         if venv_remote_export_path: