mirror of
https://github.com/Fishwaldo/u-boot.git
synced 2025-03-18 13:11:31 +00:00
buildman: Produce a sensible error message when branch is missing
Rather than a backtrace, produce a nice error message when an invalid branch is provided to buildman. Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
2a08b740e3
commit
cce717a96c
2 changed files with 19 additions and 6 deletions
|
@ -111,6 +111,10 @@ def DoBuildman(options, args):
|
|||
print col.Color(col.RED, str)
|
||||
sys.exit(1)
|
||||
count = gitutil.CountCommitsInBranch(options.git_dir, options.branch)
|
||||
if count is None:
|
||||
str = "Branch '%s' not found or has no upstream" % options.branch
|
||||
print col.Color(col.RED, str)
|
||||
sys.exit(1)
|
||||
count += 1 # Build upstream commit also
|
||||
|
||||
if not count:
|
||||
|
|
|
@ -56,10 +56,14 @@ def GetUpstream(git_dir, branch):
|
|||
Returns:
|
||||
Name of upstream branch (e.g. 'upstream/master') or None if none
|
||||
"""
|
||||
remote = command.OutputOneLine('git', '--git-dir', git_dir, 'config',
|
||||
'branch.%s.remote' % branch)
|
||||
merge = command.OutputOneLine('git', '--git-dir', git_dir, 'config',
|
||||
'branch.%s.merge' % branch)
|
||||
try:
|
||||
remote = command.OutputOneLine('git', '--git-dir', git_dir, 'config',
|
||||
'branch.%s.remote' % branch)
|
||||
merge = command.OutputOneLine('git', '--git-dir', git_dir, 'config',
|
||||
'branch.%s.merge' % branch)
|
||||
except:
|
||||
return None
|
||||
|
||||
if remote == '.':
|
||||
return merge
|
||||
elif remote and merge:
|
||||
|
@ -78,9 +82,11 @@ def GetRangeInBranch(git_dir, branch, include_upstream=False):
|
|||
branch: Name of branch
|
||||
Return:
|
||||
Expression in the form 'upstream..branch' which can be used to
|
||||
access the commits.
|
||||
access the commits. If the branch does not exist, returns None.
|
||||
"""
|
||||
upstream = GetUpstream(git_dir, branch)
|
||||
if not upstream:
|
||||
return None
|
||||
return '%s%s..%s' % (upstream, '~' if include_upstream else '', branch)
|
||||
|
||||
def CountCommitsInBranch(git_dir, branch, include_upstream=False):
|
||||
|
@ -90,9 +96,12 @@ def CountCommitsInBranch(git_dir, branch, include_upstream=False):
|
|||
git_dir: Directory containing git repo
|
||||
branch: Name of branch
|
||||
Return:
|
||||
Number of patches that exist on top of the branch
|
||||
Number of patches that exist on top of the branch, or None if the
|
||||
branch does not exist.
|
||||
"""
|
||||
range_expr = GetRangeInBranch(git_dir, branch, include_upstream)
|
||||
if not range_expr:
|
||||
return None
|
||||
pipe = [['git', '--git-dir', git_dir, 'log', '--oneline', '--no-decorate',
|
||||
range_expr],
|
||||
['wc', '-l']]
|
||||
|
|
Loading…
Add table
Reference in a new issue