]> code.ossystems Code Review - openembedded-core.git/commitdiff
scripts/combo-layer: auto-commit updated config file
authorPaul Eggleton <paul.eggleton@linux.intel.com>
Wed, 2 Nov 2011 18:00:07 +0000 (18:00 +0000)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Mon, 7 Nov 2011 13:58:39 +0000 (13:58 +0000)
If the config file is tracked within the combo-layer repository and it
is updated at the end of the "update" operation (because last_revision
has been changed), then automatically commit the file. This ensures that
multiple people can perform updates on different machines without the
last revision information going missing.

(If the file is outside the repository or is masked via .gitignore, this
will do nothing.)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
scripts/combo-layer

index f3480dcf5abddfc21108b5d4765746cefec08ab9..e2b180dc7e1da44b60145e5f75298818fa62b33e 100755 (executable)
@@ -230,6 +230,18 @@ def action_update(conf, args):
     action_apply_patch(conf, args)
     runcmd("rm -rf %s" % patch_dir)
 
+    # Step 7: commit the updated config file if it's being tracked
+    relpath = os.path.relpath(conf.conffile)
+    try:
+        output = runcmd("git status --porcelain %s" % relpath)
+    except:
+        # Outside the repository
+        output = None
+    if output:
+        logger.info("Committing updated configuration file")
+        if output.lstrip().startswith("M"):
+            runcmd('git commit -m "Automatic commit to update last_revision" %s' % relpath)
+
 def action_apply_patch(conf, args):
     """
         apply the generated patch list to combo repo