summaryrefslogtreecommitdiffstats
path: root/scripts/combo-layer
diff options
context:
space:
mode:
authorPatrick Ohly <patrick.ohly@intel.com>2015-03-09 13:50:11 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2015-03-20 11:03:08 +0000
commitdba34e5a6f0a4c726266654dc5f26e0f7f13db0f (patch)
tree3de29468837b06f1f53a92ab7815ddb8b37feebb /scripts/combo-layer
parenta3b246ee928d2ec59c8b6a775d9309f5be33ecc7 (diff)
downloadopenembedded-core-contrib-dba34e5a6f0a4c726266654dc5f26e0f7f13db0f.tar.gz
combo-layer: make Signed-off-by optional
It depends on the diligence of the person running the combo-layer tool whether the Signed-off-by line added to each commit actually indicates that the person was involved in validating the change. When the import is purely automatic, it is better to not add the line, because the history is more useful without it (searching for the person really only lists changes he or she was involved with) and it would be a false statement. The 'signoff' property can be set per repository, like every other property. But setting it in the special [DEFAULT] section is more useful, so that is what the example shows. Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Diffstat (limited to 'scripts/combo-layer')
-rwxr-xr-xscripts/combo-layer7
1 files changed, 6 insertions, 1 deletions
diff --git a/scripts/combo-layer b/scripts/combo-layer
index 71fa7b127c0..62f2cf8fa33 100755
--- a/scripts/combo-layer
+++ b/scripts/combo-layer
@@ -68,6 +68,11 @@ class Configuration(object):
if value.startswith("@"):
self.repos[repo][name] = eval(value.strip("@"))
else:
+ # Apply special type transformations for some properties.
+ # Type matches the RawConfigParser.get*() methods.
+ types = {'signoff': 'boolean'}
+ if name in types:
+ value = getattr(parser, 'get' + types[name])(section, name)
self.repos[repo][name] = value
logger.debug("Loading config file %s" % self.conffile)
@@ -482,7 +487,7 @@ def apply_patchlist(conf, repos):
if os.path.getsize(patchfile) == 0:
logger.info("(skipping %d/%d %s - no changes)" % (i, linecount, patchdisp))
else:
- cmd = "git am --keep-cr -s -p1 %s" % patchfile
+ cmd = "git am --keep-cr %s-p1 %s" % ('-s ' if repo.get('signoff', True) else '', patchfile)
logger.info("Applying %d/%d: %s" % (i, linecount, patchdisp))
try:
runcmd(cmd)