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

Daniel Dunbar daniel at zuster.org
Fri Apr 13 16:36:12 PDT 2012


Author: ddunbar
Date: Fri Apr 13 18:36:12 2012
New Revision: 154714

URL: http://llvm.org/viewvc/llvm-project?rev=154714&view=rev
Log:
Add 'lnt update' action to just run the auto-upgrade on a database.

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=154714&r1=154713&r2=154714&view=diff
==============================================================================
--- lnt/trunk/lnt/lnttool/main.py (original)
+++ lnt/trunk/lnt/lnttool/main.py Fri Apr 13 18:36:12 2012
@@ -218,6 +218,37 @@
     from lnt.util import ServerUtil
     ServerUtil.submitFiles(args[0], args[1:], opts.commit, opts.verbose)
 
+def action_update(name, args):
+    """auto-upgrade the given database"""
+
+    parser = OptionParser("%%prog %s [options] <db path>" % name)
+    parser.add_option("", "--show-sql", dest="show_sql", default=False,
+                      action="store_true", help="show all SQL queries")
+
+    (opts, args) = parser.parse_args(args)
+    if len(args) != 1:
+        parser.error("incorrect number of argments")
+
+    db_path, = args
+
+    # Setup the base LNT logger.
+    logger = logging.getLogger("lnt")
+    logger.setLevel(logging.INFO)
+    handler = logging.StreamHandler(sys.stderr)
+    handler.setFormatter(logging.Formatter(
+            '%(asctime)s %(levelname)s: %(message)s',
+            datefmt='%Y-%m-%d %H:%M:%S'))
+    logger.addHandler(handler)
+
+    # Enable full SQL logging, if requested.
+    if opts.show_sql:
+        sa_logger = logging.getLogger("sqlalchemy")
+        sa_logger.setLevel(logging.INFO)
+        sa_logger.addHandler(handler)
+
+    # Update the database.
+    lnt.server.db.migrate.update_path(db_path)
+
 ###
 
 commands = dict((name[7:], f) for name,f in locals().items()





More information about the llvm-commits mailing list