diff options
author | Steve Rae <steve.rae@raedomain.com> | 2016-08-10 15:00:00 -0700 |
---|---|---|
committer | Steve Rae <steve.rae@raedomain.com> | 2016-09-20 15:31:20 +0000 |
commit | d648045366b3710c834531295bd643bceb0c612c (patch) | |
tree | 3cb2563ade2dbc4617c3ed7b4517c86d17a4428e /manifest_xml.py | |
parent | 628456833a9be237c7373254fbe0771b2e802a88 (diff) | |
download | git-repo-d648045366b3710c834531295bd643bceb0c612c.tar.gz |
implement optional 'pushurl' in the manifest file
Allow the 'remote' element in the manifest file to define an optional
'pushurl' attribute which is passed into the .git/config file.
Change-Id: If342d299d371374aedc4440645798888869c9714
Signed-off-by: Steve Rae <steve.rae@raedomain.com>
Diffstat (limited to 'manifest_xml.py')
-rw-r--r-- | manifest_xml.py | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/manifest_xml.py b/manifest_xml.py index 295493de..9c882af6 100644 --- a/manifest_xml.py +++ b/manifest_xml.py | |||
@@ -64,11 +64,13 @@ class _XmlRemote(object): | |||
64 | name, | 64 | name, |
65 | alias=None, | 65 | alias=None, |
66 | fetch=None, | 66 | fetch=None, |
67 | pushUrl=None, | ||
67 | manifestUrl=None, | 68 | manifestUrl=None, |
68 | review=None, | 69 | review=None, |
69 | revision=None): | 70 | revision=None): |
70 | self.name = name | 71 | self.name = name |
71 | self.fetchUrl = fetch | 72 | self.fetchUrl = fetch |
73 | self.pushUrl = pushUrl | ||
72 | self.manifestUrl = manifestUrl | 74 | self.manifestUrl = manifestUrl |
73 | self.remoteAlias = alias | 75 | self.remoteAlias = alias |
74 | self.reviewUrl = review | 76 | self.reviewUrl = review |
@@ -104,6 +106,7 @@ class _XmlRemote(object): | |||
104 | remoteName = self.remoteAlias | 106 | remoteName = self.remoteAlias |
105 | return RemoteSpec(remoteName, | 107 | return RemoteSpec(remoteName, |
106 | url=url, | 108 | url=url, |
109 | pushUrl=self.pushUrl, | ||
107 | review=self.reviewUrl, | 110 | review=self.reviewUrl, |
108 | orig_name=self.name) | 111 | orig_name=self.name) |
109 | 112 | ||
@@ -160,6 +163,8 @@ class XmlManifest(object): | |||
160 | root.appendChild(e) | 163 | root.appendChild(e) |
161 | e.setAttribute('name', r.name) | 164 | e.setAttribute('name', r.name) |
162 | e.setAttribute('fetch', r.fetchUrl) | 165 | e.setAttribute('fetch', r.fetchUrl) |
166 | if r.pushUrl is not None: | ||
167 | e.setAttribute('pushurl', r.pushUrl) | ||
163 | if r.remoteAlias is not None: | 168 | if r.remoteAlias is not None: |
164 | e.setAttribute('alias', r.remoteAlias) | 169 | e.setAttribute('alias', r.remoteAlias) |
165 | if r.reviewUrl is not None: | 170 | if r.reviewUrl is not None: |
@@ -639,6 +644,9 @@ class XmlManifest(object): | |||
639 | if alias == '': | 644 | if alias == '': |
640 | alias = None | 645 | alias = None |
641 | fetch = self._reqatt(node, 'fetch') | 646 | fetch = self._reqatt(node, 'fetch') |
647 | pushUrl = node.getAttribute('pushurl') | ||
648 | if pushUrl == '': | ||
649 | pushUrl = None | ||
642 | review = node.getAttribute('review') | 650 | review = node.getAttribute('review') |
643 | if review == '': | 651 | if review == '': |
644 | review = None | 652 | review = None |
@@ -646,7 +654,7 @@ class XmlManifest(object): | |||
646 | if revision == '': | 654 | if revision == '': |
647 | revision = None | 655 | revision = None |
648 | manifestUrl = self.manifestProject.config.GetString('remote.origin.url') | 656 | manifestUrl = self.manifestProject.config.GetString('remote.origin.url') |
649 | return _XmlRemote(name, alias, fetch, manifestUrl, review, revision) | 657 | return _XmlRemote(name, alias, fetch, pushUrl, manifestUrl, review, revision) |
650 | 658 | ||
651 | def _ParseDefault(self, node): | 659 | def _ParseDefault(self, node): |
652 | """ | 660 | """ |