Fixup cleanup_rings a bit

This commit is contained in:
Ludwig Nussel 2016-05-02 11:21:44 +02:00
parent dcb53ead4e
commit 082f3a9a52
3 changed files with 10 additions and 3 deletions

View File

@ -30,8 +30,9 @@ class CleanupRings(object):
for si in root.findall('sourceinfo'):
linked = si.find('linked')
if linked is not None and linked.get('project') != self.api.project:
# XXX: why allow linking to :Rings?
if not linked.get('project').startswith(self.api.crings):
print "#not linking to base: ", self.api.crings, linked.get('project')
print "#{} not linking to base {} but {}".format(si.get('package'), self.api.project, linked.get('project'))
self.links[linked.get('package')] = si.get('package')
def fill_pkgdeps(self, prj, repo, arch):
@ -58,6 +59,7 @@ class CleanupRings(object):
source = package.find('source').text
for pkg in package.findall('pkgdep'):
if pkg.text not in self.bin2src:
if not pkg.text.startswith('texlive-'): # XXX: texlive bullshit packaging
print('Package {} not found in place'.format(pkg.text))
continue
b = self.bin2src[pkg.text]
@ -78,7 +80,7 @@ class CleanupRings(object):
return False
self.find_inner_ring_links(prj)
for arch in [ 'x86_64', 'ppc64le' ]:
for arch in self.api.cstaging_dvd_archs:
self.fill_pkgdeps(prj, 'standard', arch)
if prj == '{}:1-MinimalX'.format(self.api.crings):
@ -117,6 +119,8 @@ class CleanupRings(object):
for source in self.sources:
if source not in self.pkgdeps and source not in self.links:
if source.startswith('texlive-specs-'): # XXX: texlive bullshit packaging
continue
print('osc rdelete -m cleanup {} {}'.format(prj, source))
if nextprj:
print('osc linkpac {} {} {}').format(self.api.project, source, nextprj)

View File

@ -34,6 +34,7 @@ DEFAULT = {
'staging': 'openSUSE:%(project)s:Staging',
'staging-group': 'factory-staging',
'staging-archs': 'i586 x86_64 ppc64le',
'staging-dvd-archs': 'x86_64 ppc64le',
'nocleanup-packages': 'Test-DVD-x86_64 Test-DVD-ppc64le bootstrap-copy',
'rings': 'openSUSE:%(project)s:Rings',
'nonfree': 'openSUSE:%(project)s:NonFree',
@ -47,6 +48,7 @@ DEFAULT = {
'staging': 'SUSE:%(project)s:Staging',
'staging-group': 'sle-staging-managers', # '%(project.lower)s-staging',
'staging-archs': 'i586 x86_64',
'staging-dvd-archs': 'x86_64',
'nocleanup-packages': 'Test-DVD-x86_64 sles-release',
'rings': None,
'nonfree': None,

View File

@ -54,6 +54,7 @@ class StagingAPI(object):
self.cstaging = conf.config[project]['staging']
self.cstaging_group = conf.config[project]['staging-group']
self.cstaging_archs = conf.config[project]['staging-archs'].split(' ')
self.cstaging_dvd_archs = conf.config[project]['staging-dvd-archs'].split(' ')
self.cstaging_nocleanup = conf.config[project]['nocleanup-packages'].split()
self.crings = conf.config[project]['rings']
self.cnonfree = conf.config[project]['nonfree']