diff options
| author | Raman Tenneti <rtenneti@google.com> | 2021-01-07 16:50:45 -0800 |
|---|---|---|
| committer | Raman Tenneti <rtenneti@google.com> | 2021-01-08 19:49:52 +0000 |
| commit | 1bb4fb222d831ed384d6fdef7402d36c19e91b2e (patch) | |
| tree | b915dfcb1352d29ce1fdd9b364d591be3e3ee289 /docs/manifest-format.md | |
| parent | b64bec6acc0e2a835f427d8424af89dfcddaf08f (diff) | |
| download | git-repo-1bb4fb222d831ed384d6fdef7402d36c19e91b2e.tar.gz | |
manifest_xml: initial support for <superproject>
At most one superproject may be specified. It will be used
to specify the URL of superproject.
It would have 3 attributes: remote, name, and default.
Only "name" is required while the others have reasonable defaults.
<remote name="superproject-url" review="<url>" />
<superproject remote="superproject-url" name="platform/superproject"/>
TODO: This CL only implements the parsing logic and further work
will be in followup CLs.
Tested the code with the following commands.
$ ./run_tests tests/test_manifest_xml.py
$ ./run_tests -v
Bug: https://crbug.com/gerrit/13709
Tested-by: Raman Tenneti <rtenneti@google.com>
Change-Id: I5b4bba02c8b59601c754cf6b5e4d07a1e16ce167
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/292982
Reviewed-by: Mike Frysinger <vapier@google.com>
Diffstat (limited to 'docs/manifest-format.md')
| -rw-r--r-- | docs/manifest-format.md | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/docs/manifest-format.md b/docs/manifest-format.md index ca385ba3..8e5e2874 100644 --- a/docs/manifest-format.md +++ b/docs/manifest-format.md | |||
| @@ -29,6 +29,7 @@ following DTD: | |||
| 29 | project*, | 29 | project*, |
| 30 | extend-project*, | 30 | extend-project*, |
| 31 | repo-hooks?, | 31 | repo-hooks?, |
| 32 | superproject?, | ||
| 32 | include*)> | 33 | include*)> |
| 33 | 34 | ||
| 34 | <!ELEMENT notice (#PCDATA)> | 35 | <!ELEMENT notice (#PCDATA)> |
| @@ -98,6 +99,10 @@ following DTD: | |||
| 98 | <!ATTLIST repo-hooks in-project CDATA #REQUIRED> | 99 | <!ATTLIST repo-hooks in-project CDATA #REQUIRED> |
| 99 | <!ATTLIST repo-hooks enabled-list CDATA #REQUIRED> | 100 | <!ATTLIST repo-hooks enabled-list CDATA #REQUIRED> |
| 100 | 101 | ||
| 102 | <!ELEMENT superproject (EMPTY)> | ||
| 103 | <!ATTLIST superproject name CDATA #REQUIRED> | ||
| 104 | <!ATTLIST superproject remote IDREF #IMPLIED> | ||
| 105 | |||
| 101 | <!ELEMENT include EMPTY> | 106 | <!ELEMENT include EMPTY> |
| 102 | <!ATTLIST include name CDATA #REQUIRED> | 107 | <!ATTLIST include name CDATA #REQUIRED> |
| 103 | <!ATTLIST include groups CDATA #IMPLIED> | 108 | <!ATTLIST include groups CDATA #IMPLIED> |
| @@ -377,6 +382,28 @@ defined `project` element. | |||
| 377 | 382 | ||
| 378 | Attribute `enabled-list`: List of hooks to use, whitespace or comma separated. | 383 | Attribute `enabled-list`: List of hooks to use, whitespace or comma separated. |
| 379 | 384 | ||
| 385 | ### Element superproject | ||
| 386 | |||
| 387 | *** | ||
| 388 | *Note*: This is currently a WIP. | ||
| 389 | *** | ||
| 390 | |||
| 391 | NB: See the [git superprojects documentation]( | ||
| 392 | https://en.wikibooks.org/wiki/Git/Submodules_and_Superprojects) for background | ||
| 393 | information. | ||
| 394 | |||
| 395 | This element is used to specify the URL of the superproject. It has "name" and | ||
| 396 | "remote" as atrributes. Only "name" is required while the others have | ||
| 397 | reasonable defaults. At most one superproject may be specified. | ||
| 398 | Attempting to redefine it will fail to parse. | ||
| 399 | |||
| 400 | Attribute `name`: A unique name for the superproject. This attribute has the | ||
| 401 | same meaning as project's name attribute. See the | ||
| 402 | [element project](#element-project) for more information. | ||
| 403 | |||
| 404 | Attribute `remote`: Name of a previously defined remote element. | ||
| 405 | If not supplied the remote given by the default element is used. | ||
| 406 | |||
| 380 | ### Element include | 407 | ### Element include |
| 381 | 408 | ||
| 382 | This element provides the capability of including another manifest | 409 | This element provides the capability of including another manifest |
