[llvm-commits] [LNT] r167746 - /lnt/trunk/lnt/lnttool/main.py

Daniel Dunbar daniel at zuster.org
Mon Nov 12 12:06:43 PST 2012


Author: ddunbar
Date: Mon Nov 12 14:06:43 2012
New Revision: 167746

URL: http://llvm.org/viewvc/llvm-project?rev=167746&view=rev
Log:
dailyreport: Add --today and --subject-prefix options.

 - The --today option causes the report to be generated for the today,
   regardless of when the last run was reported.

Modified:
    lnt/trunk/lnt/lnttool/main.py

Modified: lnt/trunk/lnt/lnttool/main.py
URL: http://llvm.org/viewvc/llvm-project/lnt/trunk/lnt/lnttool/main.py?rev=167746&r1=167745&r2=167746&view=diff
==============================================================================
--- lnt/trunk/lnt/lnttool/main.py (original)
+++ lnt/trunk/lnt/lnttool/main.py Mon Nov 12 14:06:43 2012
@@ -274,6 +274,10 @@
                       help="email relay host to use [%default]")
     parser.add_option("", "--from", dest="from_address", default=None,
                       help="from email address (required)")
+    parser.add_option("", "--today", dest="today", action="store_true",
+                      help="send the report for today (instead of most recent)")
+    parser.add_option("", "--subject-prefix", dest="subject_prefix",
+                      help="add a subject prefix")
     (opts, args) = parser.parse_args(args)
 
     if len(args) != 2:
@@ -293,17 +297,20 @@
     # Get the testsuite.
     ts = db.testsuite[opts.testsuite]
 
-    # Get a timestamp to use to derive the daily report to generate.
-    latest = ts.query(ts.Run).\
-        order_by(ts.Run.start_time.desc()).limit(1).first()
-
-    # If we found a run, use it's start time (rounded up to the next hour, so we
-    # make sure it gets included).
-    if latest:
-        date = latest.start_time + datetime.timedelta(hours=1)
-    else:
-        # Otherwise, just use now.
+    if opts.today:
         date = datetime.datetime.now()
+    else:
+        # Get a timestamp to use to derive the daily report to generate.
+        latest = ts.query(ts.Run).\
+            order_by(ts.Run.start_time.desc()).limit(1).first()
+
+        # If we found a run, use it's start time (rounded up to the next hour,
+        # so we make sure it gets included).
+        if latest:
+            date = latest.start_time + datetime.timedelta(hours=1)
+        else:
+            # Otherwise, just use now.
+            date = datetime.datetime.now()
 
     # Generate the daily report.
     note("building report data...")
@@ -318,6 +325,9 @@
         report.year, report.month, report.day)
     html_report = report.render(ts_url, only_html_body=False)
 
+    if opts.subject_prefix is not None:
+        subject = "%s %s" % (opts.subject_prefix, subject)
+
     # Form the multipart email message.
     msg = email.mime.multipart.MIMEMultipart('alternative')
     msg['Subject'] = subject





More information about the llvm-commits mailing list