[Lsb-messages] /var/www/bzr/lsb/devel/puppet-lsb r217: Handle the case where appbat raw files are missing in buildbot build.

Jeff Licquia licquia at linuxfoundation.org
Fri Mar 2 20:23:08 UTC 2012


------------------------------------------------------------
revno: 217
committer: Jeff Licquia <licquia at linuxfoundation.org>
branch nick: puppet-lsb
timestamp: Fri 2012-03-02 15:23:08 -0500
message:
  Handle the case where appbat raw files are missing in buildbot build.
modified:
  modules/buildbot/files/slavescripts/run-appbat-tests
-------------- next part --------------
=== modified file 'modules/buildbot/files/slavescripts/run-appbat-tests'
--- a/modules/buildbot/files/slavescripts/run-appbat-tests	2012-01-28 15:43:16 +0000
+++ b/modules/buildbot/files/slavescripts/run-appbat-tests	2012-03-02 20:23:08 +0000
@@ -54,35 +54,40 @@
 
     # Run appchk.
 
-    for pkgrootdir in os.listdir("pkgroot"):
-        prjname = os.path.basename(pkgrootdir).replace("lsb-", "")
-        if prjname in project_exe:
-            appchk_out = open(
-                os.path.join(resultdir, "lsb-%s.output" % prjname), "w")
-            appchk_journalpath = \
-                os.path.join(resultdir, "journal.appchk.%s" % prjname)
-            appchk_exe = os.path.join("pkgroot", pkgrootdir, 
-                                      "opt", "lsb", "appbat", 
-                                      project_exe[prjname])
-            appchk_cmdline = \
-                "/opt/lsb/bin/lsbappchk -j -o %s -D pkgroot/%s/opt/lsb/appbat/%s %s" % \
-                (appchk_journalpath, pkgrootdir, libdir, appchk_exe)
-
-            appchk_process = subprocess.Popen(appchk_cmdline, shell=True, 
-                                              stdout=appchk_out, 
-                                              stderr=subprocess.STDOUT)
-            appchk_process.wait()
-            appchk_out.close()
-
-            if appchk_process.returncode != 0:
-                sys.stdout.write("appchk failed on %s\n" % prjname)
-            else:
-                tjreport_out = open(
-                    os.path.join(resultdir, "tjreport.%s.txt" % prjname), "w")
-                subprocess.call(
-                    "/opt/lsb-tet3-lite/bin/tjreport %s" % appchk_journalpath,
-                    stdout=tjreport_out, stderr=subprocess.STDOUT, shell=True)
-                tjreport_out.close()
+    if os.path.isdir("pkgroot"):
+        for pkgrootdir in os.listdir("pkgroot"):
+            prjname = os.path.basename(pkgrootdir).replace("lsb-", "")
+            if prjname in project_exe:
+                appchk_out = open(
+                    os.path.join(resultdir, "lsb-%s.output" % prjname), "w")
+                appchk_journalpath = \
+                    os.path.join(resultdir, "journal.appchk.%s" % prjname)
+                appchk_exe = os.path.join("pkgroot", pkgrootdir, 
+                                          "opt", "lsb", "appbat", 
+                                          project_exe[prjname])
+                appchk_cmdline = \
+                    "/opt/lsb/bin/lsbappchk -j -o %s -D pkgroot/%s/opt/lsb/appbat/%s %s" % \
+                    (appchk_journalpath, pkgrootdir, libdir, appchk_exe)
+
+                appchk_process = subprocess.Popen(appchk_cmdline, shell=True, 
+                                                  stdout=appchk_out, 
+                                                  stderr=subprocess.STDOUT)
+                appchk_process.wait()
+                appchk_out.close()
+
+                if appchk_process.returncode != 0:
+                    sys.stdout.write("appchk failed on %s\n" % prjname)
+                else:
+                    tjreport_out = open(
+                        os.path.join(resultdir, "tjreport.%s.txt" % prjname), "w")
+                    subprocess.call(
+                        "/opt/lsb-tet3-lite/bin/tjreport %s" % appchk_journalpath,
+                        stdout=tjreport_out, stderr=subprocess.STDOUT, shell=True)
+                    tjreport_out.close()
+    else: # so, not os.path.isdir("pkgroot")
+        f = open(os.path.join(resultdir, "noresult-appchk.txt"))
+        f.write("No results - pkgroot path not found.\n")
+        f.close()
 
 def run_pkgchk(pkgdir, resultdir):
     for pkg in os.listdir(pkgdir):



More information about the lsb-messages mailing list