mirror of
				https://git.launchpad.net/~ubuntu-release/britney/+git/britney2-ubuntu
				synced 2025-11-04 10:34:05 +00:00 
			
		
		
		
	Only trigger autopkgtests for some key packages for gcc-*
Through the usual reverse dependency triggering, gcc-* usually triggers many hundreds of (mostly universe) tests via libgccN. But: - This does not help to prevent compiler regressions: as all packages are built in -proposed anyway, the new compiler is being used immediately, so we can't hold it back in -proposed. - It does not trigger toolchain tests which actually are affected, most importantly binutils and linux. - This puts enormous stress onto our test infrastructure. So special case gcc by triggering binutils and linux, and fglrx-installer as a typical (and important) example of a DKMS package which also needs a compiler, and libreoffice as our favourite tool chain stress test to cover libgccN.
This commit is contained in:
		
							parent
							
								
									6591d67c47
								
							
						
					
					
						commit
						21fec5d92a
					
				@ -162,6 +162,20 @@ class AutoPackageTest(object):
 | 
			
		||||
 | 
			
		||||
        tests = []
 | 
			
		||||
 | 
			
		||||
        # gcc-* triggers tons of tests via libgcc1, but this is mostly in vain:
 | 
			
		||||
        # gcc already tests itself during build, and it is being used from
 | 
			
		||||
        # -proposed, so holding it back on a dozen unrelated test failures
 | 
			
		||||
        # serves no purpose. Just check some key packages which actually use
 | 
			
		||||
        # gcc during the test, and libreoffice as an example for a libgcc user.
 | 
			
		||||
        if src.startswith('gcc-'):
 | 
			
		||||
            for test in ['binutils', 'fglrx-installer', 'libreoffice', 'linux']:
 | 
			
		||||
                try:
 | 
			
		||||
                    tests.append((test, self.britney.sources['testing'][test][VERSION]))
 | 
			
		||||
                except KeyError:
 | 
			
		||||
                    # no package in that series? *shrug*, then not (mostly for testing)
 | 
			
		||||
                    pass
 | 
			
		||||
            return tests
 | 
			
		||||
 | 
			
		||||
        srcinfo = sources_info[src]
 | 
			
		||||
        # we want to test the package itself, if it still has a test in
 | 
			
		||||
        # unstable
 | 
			
		||||
 | 
			
		||||
@ -1137,6 +1137,19 @@ fancy 1 i386 linux-meta-lts-grumpy 1
 | 
			
		||||
            [('linux-generic', {'Source': 'linux-meta'}, None)],
 | 
			
		||||
            {'linux-meta': (False, {'lxc 1': {'amd64': 'RUNNING', 'i386': 'RUNNING'}})})
 | 
			
		||||
 | 
			
		||||
    def test_gcc(self):
 | 
			
		||||
        '''gcc only triggers some key packages'''
 | 
			
		||||
 | 
			
		||||
        self.data.add('binutils', False, {}, testsuite='autopkgtest')
 | 
			
		||||
        self.data.add('linux', False, {}, testsuite='autopkgtest')
 | 
			
		||||
        self.data.add('notme', False, {'Depends': 'libgcc1'}, testsuite='autopkgtest')
 | 
			
		||||
 | 
			
		||||
        exc = self.do_test(
 | 
			
		||||
            [('libgcc1', {'Source': 'gcc-5', 'Version': '2'}, None)],
 | 
			
		||||
            {'gcc-5': (False, {'binutils 1': {'amd64': 'RUNNING', 'i386': 'RUNNING'},
 | 
			
		||||
                               'linux 1': {'amd64': 'RUNNING', 'i386': 'RUNNING'}})})[1]
 | 
			
		||||
        self.assertNotIn('notme 1', exc['gcc-5']['tests']['autopkgtest'])
 | 
			
		||||
 | 
			
		||||
    def test_disable_adt(self):
 | 
			
		||||
        '''Run without autopkgtest requests'''
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user