diff options
| author | Paul Eggleton <paul.eggleton@linux.intel.com> | 2012-09-13 17:23:12 +0100 | 
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2012-09-14 09:49:55 +0100 | 
| commit | e498257ecbec94cec181d73bda57d44335b4dee0 (patch) | |
| tree | 9e95943e9959f3608dc3ad19baf3192a2ed5863c | |
| parent | ff8277cd133e9a02b131977078cff61fa587a1af (diff) | |
| download | openembedded-core-e498257ecbec94cec181d73bda57d44335b4dee0.tar.gz openembedded-core-e498257ecbec94cec181d73bda57d44335b4dee0.tar.bz2 openembedded-core-e498257ecbec94cec181d73bda57d44335b4dee0.zip | |
scripts/combo-layer: ensure we validate branch/revision on init
If both branch and last_revision are specified for a component when
combo-layer init is run, ensure that the specified revision is actually
on the specified branch and error out if not. Also ensure that the error
message mentions the component.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
| -rwxr-xr-x | scripts/combo-layer | 11 | 
1 files changed, 7 insertions, 4 deletions
| diff --git a/scripts/combo-layer b/scripts/combo-layer index 65435db8c0..3baea24dee 100755 --- a/scripts/combo-layer +++ b/scripts/combo-layer @@ -183,6 +183,9 @@ def action_init(conf, args):              lastrev = repo.get('last_revision', None)              if lastrev and lastrev != "HEAD":                  initialrev = lastrev +                if branch: +                    if not check_rev_branch(name, ldir, lastrev, branch): +                        sys.exit(1)                  logger.info("Copying data from %s at specified revision %s..." % (name, lastrev))              else:                  lastrev = None @@ -278,7 +281,7 @@ def drop_to_shell(workdir=None):      else:          return True -def check_rev_branch(repodir, rev, branch): +def check_rev_branch(component, repodir, rev, branch):      try:          actualbranch = runcmd("git branch --contains %s" % rev, repodir, printerr=False).rstrip()      except subprocess.CalledProcessError as e: @@ -290,10 +293,10 @@ def check_rev_branch(repodir, rev, branch):      if ' ' in actualbranch:          actualbranch = actualbranch.split(' ')[-1]      if not actualbranch: -        logger.error("Specified revision %s is invalid!" % rev) +        logger.error("%s: specified revision %s is invalid!" % (component, rev))          return False      elif actualbranch != branch: -        logger.error("Specified revision %s is not on specified branch %s!" % (rev, branch)) +        logger.error("%s: specified revision %s is not on specified branch %s!" % (component, rev, branch))          return False      return True @@ -373,7 +376,7 @@ def action_update(conf, args):              patch_cmd_range = "--root %s" % branch              rev_cmd_range = branch          else: -            if not check_rev_branch(ldir, repo['last_revision'], branch): +            if not check_rev_branch(name, ldir, repo['last_revision'], branch):                  sys.exit(1)              patch_cmd_range = "%s..%s" % (repo['last_revision'], branch)              rev_cmd_range = patch_cmd_range | 
