diff options
author | Simon Glass <sjg@chromium.org> | 2014-08-09 15:33:09 -0600 |
---|---|---|
committer | Simon Glass <sjg@chromium.org> | 2014-08-13 08:34:16 -0600 |
commit | 3b74ba5f1af147df0aea243976f7064a2734d551 (patch) | |
tree | 082be1cfbc3ca2dce1b7148f9cddccfd014f1a93 /tools | |
parent | 6131beab6993f29bd6e52e94180654cb759dc4c7 (diff) |
buildman: Allow selection of the number of commits to build
It is useful to be able to build only some of the commits in a branch. Add
support for the -c option to allow this. It was previously parsed by
buildman but not implemented.
Suggested-by: York Sun <yorksun@freescale.com>
Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: York Sun <yorksun@freescale.com>
Diffstat (limited to 'tools')
-rw-r--r-- | tools/buildman/control.py | 31 |
1 files changed, 19 insertions, 12 deletions
diff --git a/tools/buildman/control.py b/tools/buildman/control.py index 0c9e2cbfee5..98a07a29e7e 100644 --- a/tools/buildman/control.py +++ b/tools/buildman/control.py @@ -144,18 +144,25 @@ def DoBuildman(options, args): # a merge commit (it will list all the commits that form part of the # merge) if options.branch: - range_expr = gitutil.GetRangeInBranch(options.git_dir, options.branch) - upstream_commit = gitutil.GetUpstream(options.git_dir, options.branch) - series = patchstream.GetMetaDataForList(upstream_commit, - options.git_dir, 1) - - # Conflicting tags are not a problem for buildman, since it does not - # use them. For example, Series-version is not useful for buildman. On - # the other hand conflicting tags will cause an error. So allow later - # tags to overwrite earlier ones. - series.allow_overwrite = True - series = patchstream.GetMetaDataForList(range_expr, options.git_dir, None, - series) + if count == -1: + range_expr = gitutil.GetRangeInBranch(options.git_dir, + options.branch) + upstream_commit = gitutil.GetUpstream(options.git_dir, + options.branch) + series = patchstream.GetMetaDataForList(upstream_commit, + options.git_dir, 1) + + # Conflicting tags are not a problem for buildman, since it does + # not use them. For example, Series-version is not useful for + # buildman. On the other hand conflicting tags will cause an + # error. So allow later tags to overwrite earlier ones. + series.allow_overwrite = True + series = patchstream.GetMetaDataForList(range_expr, + options.git_dir, None, series) + else: + # Honour the count + series = patchstream.GetMetaDataForList(options.branch, + options.git_dir, count) else: series = None options.verbose = True |