[SCM] live-studio branch, master, updated. be51da814fb12d25dce46a7f078a46f5c89bd777

Chris Lamb lamby at debian.org
Fri Jul 30 02:52:36 UTC 2010


The following commit has been merged in the master branch:
commit edaa24444a27853d7c1fa202c4ea11a10222dd03
Author: Chris Lamb <lamby at debian.org>
Date:   Thu Jul 29 16:45:37 2010 -0400

    Copy the build results into settings.BUILD_DIR.
    
    Signed-off-by: Chris Lamb <lamby at debian.org>

diff --git a/live_studio/build/management/commands/queue_runner.py b/live_studio/build/management/commands/queue_runner.py
index 037b60a..cf53690 100644
--- a/live_studio/build/management/commands/queue_runner.py
+++ b/live_studio/build/management/commands/queue_runner.py
@@ -8,6 +8,7 @@ import tempfile
 import traceback
 import subprocess
 
+from django.conf import settings
 from django.core.management.base import NoArgsCommand
 
 from live_studio.build.models import Build
@@ -34,8 +35,13 @@ class Command(NoArgsCommand):
                 self.log.info("Building #%d in %s", build.pk, tempdir)
 
                 try:
-                    self.handle_build(build, tempdir)
-                    update(finished=datetime.datetime.utcnow(), success=True)
+                    filename = self.handle_build(build, tempdir)
+
+                    update(
+                        finished=datetime.datetime.utcnow(),
+                        filename=filename,
+                    )
+
                     self.log.info("#%d built successfully", build.pk)
                 except:
                     update(finished=datetime.datetime.utcnow())
@@ -57,6 +63,23 @@ class Command(NoArgsCommand):
         subprocess.check_call(('lh', 'config') + build.config.options())
         subprocess.check_call(('lh', 'build'))
 
+        target_dir = os.path.join(settings.BUILDS_DIR, build.ident)
+        os.makedirs(target_dir)
+
+        for extension in ('iso', 'img'):
+            if not os.path.exists('binary.%s' % extension):
+                continue
+
+            filename = '%s.%s' % (build.ident, extension)
+            os.rename(
+                'binary.%s' % extension,
+                os.path.join(target_dir, filename),
+            )
+
+            return filename
+
+        assert False, "Did not create any image"
+
     def clean(self, tempdir):
         os.chdir(tempdir)
         subprocess.call(('lh', 'clean', '--purge'))

-- 
live-studio



More information about the debian-live-changes mailing list