repos = packages
packages = [package[len('packages/'):] for package in packages]
+ scripts = ['git-migration', 'invirt.mit.edu', 'munin', 'prod-migration']
+ repos += ['scripts/%s' % script for script in scripts]
+
+ repos += ['doc/xvm', 'scripts/osx-update']
+
+ doubled_packages = {
+ 'sipb-xen-guest-installer': (310, 310),
+ 'sipb-xen-base': (314, 315),
+ 'sipb-xen-database': (311, 313),
+ 'sipb-xen-dev': (314, 315),
+ 'sipb-xen-dom0': (314, 315),
+ 'sipb-xen-remctl-auto': (314, 315),
+ }
+
+ punt = {
+ 'xvm-console-devconfig': 700,
+ 'sipb-xen-guest-installer': 742,
+ 'sipb-xen-remote-server': 1176,
+ 'sipb-xen-dns': 1184,
+ 'sipb-xen-console-server': 1187,
+ 'sipb-xen-console': 1201,
+ 'sipb-xen-base': 1350,
+ 'sipb-xen-chrony-config': 1351,
+ 'sipb-xen-database': 1352,
+ 'sipb-xen-dev': 1353,
+ 'sipb-xen-dom0': 1354,
+ 'sipb-xen-host-master': 1355,
+ 'sipb-xen-iptables': 1356,
+ 'sipb-xen-python-pydhcplib': 1357,
+ 'sipb-xen-remctl-auto': 1358,
+ 'sipb-xen-vnc-client': 1359,
+ 'sipb-xen-www': 1360,
+ 'sipb-xen-vnc-server': 1387,
+ 'sipb-xen-dhcp': 1436,
+ 'sipb-xen-autoinstaller': 1569,
+ 'sipb-xen-clvm-config': 1569,
+ 'invirt-console-host': 1815,
+ 'invirt-console-server': 1813,
+ 'invirt-remote-host': 1822,
+ 'invirt-remote-server': 1822,
+ }
+
+ quashes = [
+ ('/package_tags/sipb-xen-dev/sipb-xen-dev/', 11),
+ ('/package_tags/sipb-xen-dev/13/', 316),
+ ('/package_tags/sipb-xen-console/2/', 347),
+ ('/package_tags/sipb-xen-console/2/sipb-xen-console/', 348),
+ ('/package_tags/sipb-xen-console/2/', 349),
+ ('/package_tags/sipb-xen-console/7.1/sipb-xen-console/', 401),
+ ('/package_tags/sipb-xen-guest-installer/1.0/sipb-xen-guest-installer/', 452),
+ ('/package_tags/sipb-xen-dev/14/sipb-xen-dev/', 462),
+ ('/package_tags/sipb-xen-dev/14/', 463),
+ ('/trunk/packages/sipb-xen-autoinstaller/', 742),
+ ]
+
merges = []
for line in open('merges'):
line = line.strip()
% endfor
-match /package_tags/sipb-xen-dev/sipb-xen-dev/
+% for quash in quashes:
+match ${quash[0]}
+ min revision ${quash[1]}
+ max revision ${quash[1]}
end match
+% endfor
% for package in packages:
+
+% if package == 'sipb-xen-database':
+match /trunk/packages/${package}/${package}-0/
+ repository ${get_repo(package)}
+ branch ${get_branch(package)}
+ max revision 8
+end match
+% endif
+
+% if package in doubled_packages:
match /trunk/packages/${package}/${package}/
repository ${get_repo(package)}
branch ${get_branch(package)}
+ max revision ${doubled_packages[package][0] - 1}
end match
match /package_tags/${package}/([^/~]+)/${package}/
repository ${get_repo(package)}
branch tags/${get_tag_prefix(package)}\1
+% if package == 'sipb-xen-dev':
+ max revision 318
+% else:
+ max revision ${doubled_packages[package][0] - 1}
+% endif
+end match
+
+match /trunk/packages/tmp/${package}/
+ min revision ${doubled_packages[package][0]}
+ max revision ${doubled_packages[package][0]}
+end match
+
+match /trunk/packages/${package}/
+ min revision ${doubled_packages[package][1]}
+ max revision ${doubled_packages[package][1]}
end match
+% endif
match /trunk/packages/${package}/
repository ${get_repo(package)}
branch ${get_branch(package)}
+% if package in doubled_packages:
+ min revision ${doubled_packages[package][1] + 1}
+% endif
+% if package in punt:
+ max revision ${punt[package] - 1}
+% endif
end match
match /package_tags/${package}/([^/~]+)/
repository ${get_repo(package)}
branch tags/${get_tag_prefix(package)}\1
+% if package in doubled_packages:
+ min revision ${doubled_packages[package][1]}
+% endif
end match
match /package_tags/${package}/([^/~]+)~([^/~]+)/
repository ${get_repo(package)}
branch tags/${get_tag_prefix(package)}\1_\2
+% if package in doubled_packages:
+ min revision ${doubled_packages[package][1]}
+% endif
end match
% endfor
match /package_tags/(xen-common|xen-3.1)/
end match
-match /trunk/packages/tmp/
- repository ${get_repo('sipb-xen-database')}
- branch ${get_branch('sipb-xen-database')}
+match /trunk/dhcp/
+ repository ${get_repo('sipb-xen-dhcp')}
+ branch ${get_branch('sipb-xen-dhcp')}
+ max revision 281
+end match
+
+match /trunk/web(/|$)
+ repository ${get_repo('sipb-xen-www')}
+ branch ${get_branch('sipb-xen-www')}
+ max revision 303
+end match
+
+match /trunk/vnc/tightvnc-1.3.9_javasrc.zip
end match
-match /trunk/(dhcp|dns|scripts|vnc|web|vmctl)/
+match /trunk/vnc/vnc_javasrc/
+ repository ${get_repo('sipb-xen-vnc-client')}
+ branch ${get_branch('sipb-xen-vnc-client')}
+ max revision 304
+end match
+
+match /trunk/vnc/vnc_server(/|$)
+ repository ${get_repo('sipb-xen-vnc-server')}
+ branch ${get_branch('sipb-xen-vnc-server')}
+ max revision 286
+end match
+
+match /trunk/dns/
+ repository ${get_repo('sipb-xen-dns')}
+ branch dns
+ max revision 268
+end match
+
+% for script in scripts:
+match /trunk/scripts/${script}/
+ repository scripts/${script}.git
+ branch master
+end match
+% endfor
+
+match /trunk/scripts/
+ repository scripts/osx-update.git
+ branch master
+ min revision 1785
+ max revision 1785
+end match
+
+match /trunk/scripts/
+ repository scripts/prod-migration.git
+ branch master
+ max revision 1863
+end match
+
+% for rev in [803, 804, 925, 926, 928, 1537, 1566]:
+match /trunk/
+ repository doc/xvm.git
+ branch master
+ min revision ${rev}
+ max revision ${rev}
+end match
+% endfor
+
+match /trunk/vmctl/
end match
-match /trunk/(COPYING|xvm-host-setup-notes)
+match /trunk/COPYING$
end match
match /branches/wsgi/