From 3e865ebb78f920f9b7907bf5aca98f9e2bb72d5d Mon Sep 17 00:00:00 2001 From: LuK1337 Date: Wed, 7 Feb 2024 19:34:35 +0100 Subject: [PATCH] roomservice: Add support for remote=aosp-* This will let us sync kernel prebuilts directly from AOSP. Change-Id: Ie94f84ee7ec5020023533f8f3364b546ace4983d --- build/tools/roomservice.py | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/build/tools/roomservice.py b/build/tools/roomservice.py index 76b10c47..813ce849 100755 --- a/build/tools/roomservice.py +++ b/build/tools/roomservice.py @@ -202,12 +202,20 @@ def add_to_manifest(repositories): print('LineageOS/%s already fetched to %s' % (repo_name, repo_target)) continue - print('Adding dependency: LineageOS/%s -> %s' % (repo_name, repo_target)) project = ElementTree.Element("project", attrib = { "path": repo_target, "remote": "github", "name": "LineageOS/%s" % repo_name, "revision": repo_revision }) + if repo_remote := repository.get("remote", None): + # aosp- remotes are only used for kernel prebuilts, thus they + # don't let you customize clone-depth/revision. + if repo_remote.startswith("aosp-"): + project.attrib["name"] = repo_name + project.attrib["remote"] = repo_remote + project.attrib["clone-depth"] = "1" + del project.attrib["revision"] + print("Adding dependency: %s -> %s" % (project.attrib["name"], project.attrib["path"])) lm.append(project) indent(lm, 0) @@ -234,7 +242,10 @@ def fetch_dependencies(repo_path): fetch_list.append(dependency) syncable_repos.append(dependency['target_path']) if 'branch' not in dependency: - dependency['branch'] = get_default_or_fallback_revision(dependency['repository']) + if dependency.get('remote', 'github') == 'github': + dependency['branch'] = get_default_or_fallback_revision(dependency['repository']) + else: + dependency['branch'] = None verify_repos.append(dependency['target_path']) if not os.path.isdir(dependency['target_path']):