diff options
Diffstat (limited to 'manifest_xml.py')
| -rw-r--r-- | manifest_xml.py | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/manifest_xml.py b/manifest_xml.py index 9b5d7847..60d61168 100644 --- a/manifest_xml.py +++ b/manifest_xml.py | |||
| @@ -63,6 +63,7 @@ class _Default(object): | |||
| 63 | sync_j = 1 | 63 | sync_j = 1 |
| 64 | sync_c = False | 64 | sync_c = False |
| 65 | sync_s = False | 65 | sync_s = False |
| 66 | sync_tags = True | ||
| 66 | 67 | ||
| 67 | def __eq__(self, other): | 68 | def __eq__(self, other): |
| 68 | return self.__dict__ == other.__dict__ | 69 | return self.__dict__ == other.__dict__ |
| @@ -238,6 +239,9 @@ class XmlManifest(object): | |||
| 238 | if d.sync_s: | 239 | if d.sync_s: |
| 239 | have_default = True | 240 | have_default = True |
| 240 | e.setAttribute('sync-s', 'true') | 241 | e.setAttribute('sync-s', 'true') |
| 242 | if not d.sync_tags: | ||
| 243 | have_default = True | ||
| 244 | e.setAttribute('sync-tags', 'false') | ||
| 241 | if have_default: | 245 | if have_default: |
| 242 | root.appendChild(e) | 246 | root.appendChild(e) |
| 243 | root.appendChild(doc.createTextNode('')) | 247 | root.appendChild(doc.createTextNode('')) |
| @@ -327,6 +331,9 @@ class XmlManifest(object): | |||
| 327 | if p.sync_s: | 331 | if p.sync_s: |
| 328 | e.setAttribute('sync-s', 'true') | 332 | e.setAttribute('sync-s', 'true') |
| 329 | 333 | ||
| 334 | if not p.sync_tags: | ||
| 335 | e.setAttribute('sync-tags', 'false') | ||
| 336 | |||
| 330 | if p.clone_depth: | 337 | if p.clone_depth: |
| 331 | e.setAttribute('clone-depth', str(p.clone_depth)) | 338 | e.setAttribute('clone-depth', str(p.clone_depth)) |
| 332 | 339 | ||
| @@ -564,12 +571,15 @@ class XmlManifest(object): | |||
| 564 | groups = node.getAttribute('groups') | 571 | groups = node.getAttribute('groups') |
| 565 | if groups: | 572 | if groups: |
| 566 | groups = self._ParseGroups(groups) | 573 | groups = self._ParseGroups(groups) |
| 574 | revision = node.getAttribute('revision') | ||
| 567 | 575 | ||
| 568 | for p in self._projects[name]: | 576 | for p in self._projects[name]: |
| 569 | if path and p.relpath != path: | 577 | if path and p.relpath != path: |
| 570 | continue | 578 | continue |
| 571 | if groups: | 579 | if groups: |
| 572 | p.groups.extend(groups) | 580 | p.groups.extend(groups) |
| 581 | if revision: | ||
| 582 | p.revisionExpr = revision | ||
| 573 | if node.nodeName == 'repo-hooks': | 583 | if node.nodeName == 'repo-hooks': |
| 574 | # Get the name of the project and the (space-separated) list of enabled. | 584 | # Get the name of the project and the (space-separated) list of enabled. |
| 575 | repo_hooks_project = self._reqatt(node, 'in-project') | 585 | repo_hooks_project = self._reqatt(node, 'in-project') |
| @@ -702,6 +712,12 @@ class XmlManifest(object): | |||
| 702 | d.sync_s = False | 712 | d.sync_s = False |
| 703 | else: | 713 | else: |
| 704 | d.sync_s = sync_s.lower() in ("yes", "true", "1") | 714 | d.sync_s = sync_s.lower() in ("yes", "true", "1") |
| 715 | |||
| 716 | sync_tags = node.getAttribute('sync-tags') | ||
| 717 | if not sync_tags: | ||
| 718 | d.sync_tags = True | ||
| 719 | else: | ||
| 720 | d.sync_tags = sync_tags.lower() in ("yes", "true", "1") | ||
| 705 | return d | 721 | return d |
| 706 | 722 | ||
| 707 | def _ParseNotice(self, node): | 723 | def _ParseNotice(self, node): |
| @@ -796,6 +812,12 @@ class XmlManifest(object): | |||
| 796 | else: | 812 | else: |
| 797 | sync_s = sync_s.lower() in ("yes", "true", "1") | 813 | sync_s = sync_s.lower() in ("yes", "true", "1") |
| 798 | 814 | ||
| 815 | sync_tags = node.getAttribute('sync-tags') | ||
| 816 | if not sync_tags: | ||
| 817 | sync_tags = self._default.sync_tags | ||
| 818 | else: | ||
| 819 | sync_tags = sync_tags.lower() in ("yes", "true", "1") | ||
| 820 | |||
| 799 | clone_depth = node.getAttribute('clone-depth') | 821 | clone_depth = node.getAttribute('clone-depth') |
| 800 | if clone_depth: | 822 | if clone_depth: |
| 801 | try: | 823 | try: |
| @@ -841,6 +863,7 @@ class XmlManifest(object): | |||
| 841 | groups = groups, | 863 | groups = groups, |
| 842 | sync_c = sync_c, | 864 | sync_c = sync_c, |
| 843 | sync_s = sync_s, | 865 | sync_s = sync_s, |
| 866 | sync_tags = sync_tags, | ||
| 844 | clone_depth = clone_depth, | 867 | clone_depth = clone_depth, |
| 845 | upstream = upstream, | 868 | upstream = upstream, |
| 846 | parent = parent, | 869 | parent = parent, |
