with open(layers_f, 'w') as f:
json.dump({"version":"1.0","layers":layers}, f, sort_keys=True, indent=4)
+def _get_remotes(r_remote):
+ remotes = {}
+
+ if not 'remotes' in r_remote and not 'uri' in r_remote:
+ raise Exception("Expected key(s): 'remotes', 'uri'")
+
+ if 'remotes' in r_remote:
+ remotes = r_remote['remotes'].copy()
+
+ if 'uri' in r_remote:
+ r_name = ''
+
+ if 'remotes' in r_remote:
+ if not 'origin' in r_remote['remotes']:
+ r_name = 'origin'
+ else:
+ import itertools
+ for i in itertools.count(start=1):
+ if not 'origin-{}'.format(i) in r_remote['remotes']:
+ r_name = 'origin-{}'.format(i)
+ break
+ else:
+ r_name = 'origin'
+
+ remotes.update({r_name: {'uri': r_remote['uri']}})
+
+ return remotes
+
def _do_checkout(args, json):
repos = json['sources']
repodirs = []
if not desc:
desc = rev[:10]
branch = r_remote['branch']
- remotes = r_remote['remotes']
+
+ remotes = _get_remotes(r_remote)
print('\nSetting up source {}, revision {}, branch {}'.format(r_name, desc, branch))
if not _is_repo_git_repo(repodir):