summaryrefslogtreecommitdiffstats
path: root/manifest_xml.py
diff options
context:
space:
mode:
authorPeter Kjellerstedt <pkj@axis.com>2025-10-16 20:29:28 +0200
committerGavin Mak <gavinmak@google.com>2025-10-27 11:38:07 -0700
commit4ab2284a945d82b017c6646fca57c5973ffdabaf (patch)
treeb70f27fe505573b038c62c7eb98ef4a695b9e30b /manifest_xml.py
parent1afe96a7e997ce7748f066b206a85ac648f7a87c (diff)
downloadgit-repo-4ab2284a945d82b017c6646fca57c5973ffdabaf.tar.gz
manifest: Make extend-project support copyfile, linkfile and annotationmain
This allows an existing project to be extended by these elements. Change-Id: I6826e518f39ca86485301491639101943b7e2ae0 Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/519781 Reviewed-by: Mike Frysinger <vapier@google.com> Tested-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Reviewed-by: Gavin Mak <gavinmak@google.com>
Diffstat (limited to 'manifest_xml.py')
-rw-r--r--manifest_xml.py14
1 files changed, 11 insertions, 3 deletions
diff --git a/manifest_xml.py b/manifest_xml.py
index 30c5b590..5e0b53b9 100644
--- a/manifest_xml.py
+++ b/manifest_xml.py
@@ -1509,6 +1509,14 @@ https://gerrit.googlesource.com/git-repo/+/HEAD/docs/manifest-format.md
1509 p.UpdatePaths(relpath, worktree, gitdir, objdir) 1509 p.UpdatePaths(relpath, worktree, gitdir, objdir)
1510 self._paths[p.relpath] = p 1510 self._paths[p.relpath] = p
1511 1511
1512 for n in node.childNodes:
1513 if n.nodeName == "copyfile":
1514 self._ParseCopyFile(p, n)
1515 elif n.nodeName == "linkfile":
1516 self._ParseLinkFile(p, n)
1517 elif n.nodeName == "annotation":
1518 self._ParseAnnotation(p, n)
1519
1512 if node.nodeName == "repo-hooks": 1520 if node.nodeName == "repo-hooks":
1513 # Only one project can be the hooks project 1521 # Only one project can be the hooks project
1514 if repo_hooks_project is not None: 1522 if repo_hooks_project is not None:
@@ -1963,11 +1971,11 @@ https://gerrit.googlesource.com/git-repo/+/HEAD/docs/manifest-format.md
1963 for n in node.childNodes: 1971 for n in node.childNodes:
1964 if n.nodeName == "copyfile": 1972 if n.nodeName == "copyfile":
1965 self._ParseCopyFile(project, n) 1973 self._ParseCopyFile(project, n)
1966 if n.nodeName == "linkfile": 1974 elif n.nodeName == "linkfile":
1967 self._ParseLinkFile(project, n) 1975 self._ParseLinkFile(project, n)
1968 if n.nodeName == "annotation": 1976 elif n.nodeName == "annotation":
1969 self._ParseAnnotation(project, n) 1977 self._ParseAnnotation(project, n)
1970 if n.nodeName == "project": 1978 elif n.nodeName == "project":
1971 project.subprojects.append( 1979 project.subprojects.append(
1972 self._ParseProject(n, parent=project) 1980 self._ParseProject(n, parent=project)
1973 ) 1981 )