sync image to SYNC_DEST
authorHasan Wan <hasan.wan@intel.com>
Thu, 6 Jun 2013 03:48:02 +0000 (11:48 +0800)
committerHasan Wan <hasan.wan@intel.com>
Thu, 6 Jun 2013 03:49:08 +0000 (11:49 +0800)
Change-Id: Iab1ae95b46b005e26da52b4089c9b7b9aa35495c
Signed-off-by: Hasan Wan <hasan.wan@intel.com>
job_imager.py
job_pre_release_obs.py

index 4ab49b0..6245b88 100755 (executable)
@@ -5,6 +5,7 @@ import sys
 import subprocess
 import tempfile
 from common.buildtrigger import trigger_info
+from common.utils import sync
 
 kvmic_conf_template ="""
 [general]
@@ -64,8 +65,9 @@ def main():
 
     try:
         kickstart = fields["kickstart"]
-        buildid = fields.get("buildid") or 'prerelease'
+        build_id = fields.get("buildid") or 'prerelease'
         name = fields["name"]
+        path_to_repo = fields.get("repo_path", '')
         image_pub_path = fields.get("images_path")
         image_dest_path = image_pub_path.replace(\
                 os.getenv('IMG_PUB_PATH_BASE','_NULL_'), os.getenv('IMG_DEST_PATH_BASE','_NULL_'))
@@ -87,7 +89,7 @@ def main():
     # Temp configuration
     kvmic_conf = gen_kvmic_conf()
     print 'starting kvmic instance to create image...'
-    kvmic_cmd = "/usr/bin/kvmic -b %s -k %s -d %s -T %s -c %s"  %(buildid,
+    kvmic_cmd = "/usr/bin/kvmic -b %s -k %s -d %s -T %s -c %s"  %(build_id,
                                                                   ks_path,
                                                                   output_path,
                                                                   '20m',
@@ -104,8 +106,16 @@ def main():
     os.unlink(kvmic_conf)
 
     print 'kvmic quit, with status: %s' % status
-    return ret
 
+    # sync image, logs to SYNC_DEST
+    if path_to_repo:
+        sync_dest = os.path.join(os.getenv('IMG_SYNC_DEST_BASE'),
+                                 path_to_repo)
+
+        sync(os.path.join(output_path, build_id),
+             sync_dest)
+
+    return ret
 
 if __name__ == "__main__":
 
index 267b8ff..4b3d67e 100755 (executable)
@@ -54,7 +54,7 @@ def update_ks(imagedata, backenddb):
 
     return images_ks
 
-def trigger_image_creation(images_ks, build_id):
+def trigger_image_creation(images_ks, build_id, path_repo):
     """
     trigger_image_creation:
         Prepare the data and trigger the image_creation jobs
@@ -67,7 +67,8 @@ def trigger_image_creation(images_ks, build_id):
         data = {'name': name,
                 'kickstart': kickstart,
                 'buildid': build_id,
-                'images_path': os.path.join("images", name)
+                'images_path': os.path.join("images", name),
+                'repo_path': path_repo
                 }
         trigger_next('%s/image_trigger_%s' % (os.getenv('WORKSPACE'), index),
                      data)
@@ -134,8 +135,9 @@ def make_repo(project, repo, backenddb):
     repomaker.gen_image_info(images_ks)
 
     # trigger image creation jobs
-    trigger_image_creation(images_ks, build_id)
-
+    trigger_image_creation(images_ks, build_id,
+                           os.path.join(data['prerelease_dir'], build_id)
+                           )
 
 def main(name, action):
     """Script entry point.