summaryrefslogtreecommitdiffstats
path: root/docs/manifest_xml.txt
diff options
context:
space:
mode:
Diffstat (limited to 'docs/manifest_xml.txt')
-rw-r--r--docs/manifest_xml.txt30
1 files changed, 29 insertions, 1 deletions
diff --git a/docs/manifest_xml.txt b/docs/manifest_xml.txt
index da0e69ff..37fbd5cd 100644
--- a/docs/manifest_xml.txt
+++ b/docs/manifest_xml.txt
@@ -20,11 +20,15 @@ A manifest XML file (e.g. 'default.xml') roughly conforms to the
20following DTD: 20following DTD:
21 21
22 <!DOCTYPE manifest [ 22 <!DOCTYPE manifest [
23 <!ELEMENT manifest (remote*, 23 <!ELEMENT manifest (notice?,
24 remote*,
24 default?, 25 default?,
26 manifest-server?,
25 remove-project*, 27 remove-project*,
26 project*)> 28 project*)>
27 29
30 <!ELEMENT notice (#PCDATA)>
31
28 <!ELEMENT remote (EMPTY)> 32 <!ELEMENT remote (EMPTY)>
29 <!ATTLIST remote name ID #REQUIRED> 33 <!ATTLIST remote name ID #REQUIRED>
30 <!ATTLIST remote fetch CDATA #REQUIRED> 34 <!ATTLIST remote fetch CDATA #REQUIRED>
@@ -34,6 +38,9 @@ following DTD:
34 <!ATTLIST default remote IDREF #IMPLIED> 38 <!ATTLIST default remote IDREF #IMPLIED>
35 <!ATTLIST default revision CDATA #IMPLIED> 39 <!ATTLIST default revision CDATA #IMPLIED>
36 40
41 <!ELEMENT manifest-server (EMPTY)>
42 <!ATTLIST url CDATA #REQUIRED>
43
37 <!ELEMENT project (EMPTY)> 44 <!ELEMENT project (EMPTY)>
38 <!ATTLIST project name CDATA #REQUIRED> 45 <!ATTLIST project name CDATA #REQUIRED>
39 <!ATTLIST project path CDATA #IMPLIED> 46 <!ATTLIST project path CDATA #IMPLIED>
@@ -89,6 +96,27 @@ Attribute `revision`: Name of a Git branch (e.g. `master` or
89revision attribute will use this revision. 96revision attribute will use this revision.
90 97
91 98
99Element manifest-server
100-----------------------
101
102At most one manifest-server may be specified. The url attribute
103is used to specify the URL of a manifest server, which is an
104XML RPC service that will return a manifest in which each project
105is pegged to a known good revision for the current branch and
106target.
107
108The manifest server should implement:
109
110 GetApprovedManifest(branch, target)
111
112The target to use is defined by environment variables TARGET_PRODUCT
113and TARGET_BUILD_VARIANT. These variables are used to create a string
114of the form $TARGET_PRODUCT-$TARGET_BUILD_VARIANT, e.g. passion-userdebug.
115If one of those variables or both are not present, the program will call
116GetApprovedManifest without the target paramater and the manifest server
117should choose a reasonable default target.
118
119
92Element project 120Element project
93--------------- 121---------------
94 122