diff options
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/lib/devtool/upgrade.py | 29 |
1 files changed, 14 insertions, 15 deletions
diff --git a/scripts/lib/devtool/upgrade.py b/scripts/lib/devtool/upgrade.py index 24e3700ece..c6d98299da 100644 --- a/scripts/lib/devtool/upgrade.py +++ b/scripts/lib/devtool/upgrade.py | |||
@@ -261,21 +261,20 @@ def _extract_new_source(newpv, srctree, no_patch, srcrev, srcbranch, branch, kee | |||
261 | logger.warning('By user choice, the following patches will NOT be applied to the new source tree:\n %s' % '\n '.join([os.path.basename(patch) for patch in patches])) | 261 | logger.warning('By user choice, the following patches will NOT be applied to the new source tree:\n %s' % '\n '.join([os.path.basename(patch) for patch in patches])) |
262 | else: | 262 | else: |
263 | __run('git checkout devtool-patched -b %s' % branch) | 263 | __run('git checkout devtool-patched -b %s' % branch) |
264 | skiptag = False | 264 | (stdout, _) = __run('git branch --list devtool-override-*') |
265 | try: | 265 | branches_to_rebase = [branch] + stdout.split() |
266 | __run('git rebase %s' % rev) | 266 | for b in branches_to_rebase: |
267 | except bb.process.ExecutionError as e: | 267 | logger.info("Rebasing {} onto {}".format(b, rev)) |
268 | skiptag = True | 268 | __run('git checkout %s' % b) |
269 | if 'conflict' in e.stdout: | 269 | try: |
270 | logger.warning('Command \'%s\' failed:\n%s\n\nYou will need to resolve conflicts in order to complete the upgrade.' % (e.command, e.stdout.rstrip())) | 270 | __run('git rebase %s' % rev) |
271 | else: | 271 | except bb.process.ExecutionError as e: |
272 | logger.warning('Command \'%s\' failed:\n%s' % (e.command, e.stdout)) | 272 | if 'conflict' in e.stdout: |
273 | if not skiptag: | 273 | logger.warning('Command \'%s\' failed:\n%s\n\nYou will need to resolve conflicts in order to complete the upgrade.' % (e.command, e.stdout.rstrip())) |
274 | if uri.startswith('git://') or uri.startswith('gitsm://'): | 274 | __run('git rebase --abort') |
275 | suffix = 'new' | 275 | else: |
276 | else: | 276 | logger.warning('Command \'%s\' failed:\n%s' % (e.command, e.stdout)) |
277 | suffix = newpv | 277 | __run('git checkout %s' % branch) |
278 | __run('git tag -f devtool-patched-%s' % suffix) | ||
279 | 278 | ||
280 | if tmpsrctree: | 279 | if tmpsrctree: |
281 | if keep_temp: | 280 | if keep_temp: |