2 packages = [line.strip() for line in open('package-list')]
3 packages.append('packages/xvm-console-devconfig')
5 packages = [package[len('packages/'):] for package in packages]
8 'sipb-xen-base': (314, 315),
9 'sipb-xen-database': (311, 313),
10 'sipb-xen-dev': (314, 315),
11 'sipb-xen-dom0': (314, 315),
12 'sipb-xen-remctl-auto': (314, 315),
16 'sipb-xen-guest-installer': 742,
18 'sipb-xen-base': 1350,
19 'sipb-xen-chrony-config': 1351,
20 'sipb-xen-database': 1352,
22 'sipb-xen-dom0': 1354,
23 'sipb-xen-host-master': 1355,
24 'sipb-xen-iptables': 1356,
25 'sipb-xen-python-pydhcplib': 1357,
26 'sipb-xen-remctl-auto': 1358,
27 'sipb-xen-vnc-client': 1359,
29 'sipb-xen-vnc-server': 1387,
30 'sipb-xen-dhcp': 1436,
31 'sipb-xen-autoinstaller': 1569,
32 'sipb-xen-clvm-config': 1569,
33 'invirt-console-host': 1816,
34 'invirt-console-server': 1816,
38 for line in open('merges'):
40 if line == '' or line[0] == '#':
43 merges.append(line.split())
49 repos.remove('packages/%s' % merge[0])
50 merge_map[merge[0]] = merge[1]
51 if int(merge[2]) == 0:
52 merge_count[merge[1]] = merge_count.get(merge[1], 0) + 1
54 merge_n[merge[0]] = int(merge[2])
56 def get_repo(package):
57 if package in merge_map:
58 return get_repo(merge_map[package])
59 return 'packages/%s.git' % package
61 def get_branch(package):
62 if package in merge_map:
63 if package in merge_n or merge_count[merge_map[package]] > 1:
65 return get_branch(merge_map[package])
68 def get_tag_prefix(package):
69 if package in merge_map:
70 return '%s/' % package
75 create repository ${repo}.git
80 match /package_tags/sipb-xen-dev/sipb-xen-dev(/|$)
83 match /trunk/packages/sipb-xen-autoinstaller(/|$)
88 % for package in packages:
90 % if package == 'sipb-xen-database':
91 match /trunk/packages/${package}/${package}-0(/|$)
92 repository ${get_repo(package)}
93 branch ${get_branch(package)}
98 % if package in doubled_packages:
99 match /trunk/packages/${package}/${package}(/|$)
100 repository ${get_repo(package)}
101 branch ${get_branch(package)}
102 max revision ${doubled_packages[package][0] - 1}
105 match /package_tags/${package}/([^/~]+)/${package}(/|$)
106 repository ${get_repo(package)}
107 branch tags/${get_tag_prefix(package)}\1
108 max revision ${doubled_packages[package][0] - 1}
111 match /trunk/packages/tmp/${package}(/|$)
112 repository ${get_repo(package)}
113 branch ${get_branch(package)}
114 max revision ${doubled_packages[package][1] - 1}
118 match /trunk/packages/${package}(/|$)
119 repository ${get_repo(package)}
120 branch ${get_branch(package)}
121 % if package in doubled_packages:
122 min revision ${doubled_packages[package][1]}
124 % if package in punt:
125 max revision ${punt[package] - 1}
129 match /package_tags/${package}/([^/~]+)(/|$)
130 repository ${get_repo(package)}
131 branch tags/${get_tag_prefix(package)}\1
132 % if package in doubled_packages:
133 min revision ${doubled_packages[package][1]}
137 match /package_tags/${package}/([^/~]+)~([^/~]+)(/|$)
138 repository ${get_repo(package)}
139 branch tags/${get_tag_prefix(package)}\1_\2
140 % if package in doubled_packages:
141 min revision ${doubled_packages[package][1]}
147 match /trunk/packages/(xen-common|xen-3.1)(/|$)
150 match /package_tags/(xen-common|xen-3.1)(/|$)
153 match /trunk/dhcp(/|$)
154 repository ${get_repo('sipb-xen-dhcp')}
155 branch ${get_branch('sipb-xen-dhcp')}
159 match /trunk/web(/|$)
160 repository ${get_repo('sipb-xen-www')}
161 branch ${get_branch('sipb-xen-www')}
165 match /trunk/vnc/tightvnc-1.3.9_javasrc.zip
168 match /trunk/vnc/vnc_javasrc(/|$)
169 repository ${get_repo('sipb-xen-vnc-client')}
170 branch ${get_branch('sipb-xen-vnc-client')}
173 match /trunk/vnc/vnc_server(/|$)
174 repository ${get_repo('sipb-xen-vnc-server')}
175 branch ${get_branch('sipb-xen-vnc-server')}
178 match /trunk/(dns|scripts|vmctl)(/|$)
181 match /trunk/(COPYING|xvm-host-setup-notes)
184 match /branches/wsgi(/|$)