mirror of
https://git.launchpad.net/~ubuntu-release/britney/+git/britney2-ubuntu
synced 2025-03-12 03:41:08 +00:00
Add ADT_PPAS option for adding PPAs to autopkgtest requests
For using britney on PPAs we need to add the "ppas" test parameter to AMQP autopkgtest requests. Add ADT_PPAS britney.conf option which gets passed through to test requests.
This commit is contained in:
parent
2ebfc0bb8f
commit
400f4087bb
@ -558,6 +558,8 @@ class AutoPackageTest(object):
|
||||
triggers = _trigsources(verinfo, arch)
|
||||
for t in sorted(triggers):
|
||||
params = {'triggers': [t]}
|
||||
if self.britney.options.adt_ppas:
|
||||
params['ppas'] = self.britney.options.adt_ppas
|
||||
requests.append((pkg, json.dumps(params)))
|
||||
arch_queues[arch] = ('debci-%s-%s' % (self.series, arch), requests)
|
||||
|
||||
|
@ -69,6 +69,9 @@ ADT_ARCHES = amd64 i386 armhf ppc64el
|
||||
ADT_AMQP = amqp://test_request:password@162.213.33.228
|
||||
# Swift base URL with the results (must be publicly readable and browsable)
|
||||
ADT_SWIFT_URL = https://objectstorage.prodstack4-5.canonical.com/v1/AUTH_77e2ada1e7a84929a74ba3b87153c0ac
|
||||
# space separate list of PPAs to add for test requests; the *last* one
|
||||
# determines the swift container name
|
||||
ADT_PPAS =
|
||||
|
||||
BOOTTEST_ENABLE = no
|
||||
BOOTTEST_DEBUG = yes
|
||||
|
@ -479,6 +479,7 @@ class Britney(object):
|
||||
else:
|
||||
self.__log("Ignoring ADT_ARCHES %s as it is not in architectures list" % arch)
|
||||
self.options.adt_arches = adt_arches
|
||||
self.options.adt_ppas = self.options.adt_ppas.strip().split()
|
||||
|
||||
def __log(self, msg, type="I"):
|
||||
"""Print info messages according to verbosity level
|
||||
|
@ -1209,26 +1209,6 @@ lightgreen 1 i386 green 3
|
||||
{'lightgreen': [('old-version', '1'), ('new-version', '2')]}
|
||||
)
|
||||
|
||||
def test_disable_adt(self):
|
||||
'''Run without autopkgtest requests'''
|
||||
|
||||
# Disable AMQP server config, to ensure we don't touch them with ADT
|
||||
# disabled
|
||||
for line in fileinput.input(self.britney_conf, inplace=True):
|
||||
if line.startswith('ADT_ENABLE'):
|
||||
print('ADT_ENABLE = no')
|
||||
elif not line.startswith('ADT_AMQP') and not line.startswith('ADT_SWIFT_URL'):
|
||||
sys.stdout.write(line)
|
||||
|
||||
exc = self.do_test(
|
||||
[('libgreen1', {'Version': '2', 'Source': 'green', 'Depends': 'libc6'}, 'autopkgtest')],
|
||||
{'green': (True, {})},
|
||||
{'green': [('old-version', '1'), ('new-version', '2')]})[1]
|
||||
self.assertNotIn('autopkgtest', exc['green']['tests'])
|
||||
|
||||
self.assertEqual(self.amqp_requests, set())
|
||||
self.assertEqual(self.pending_requests, None)
|
||||
|
||||
################################################################
|
||||
# Tests for hint processing
|
||||
################################################################
|
||||
@ -1565,6 +1545,50 @@ fancy 1 i386 linux-meta-lts-grumpy 1
|
||||
{'gcc-snapshot': (True, {})})[1]
|
||||
self.assertNotIn('autopkgtest', exc['gcc-snapshot']['tests'])
|
||||
|
||||
################################################################
|
||||
# Tests for non-default ADT_* configuration modes
|
||||
################################################################
|
||||
|
||||
def test_disable_adt(self):
|
||||
'''Run without autopkgtest requests'''
|
||||
|
||||
# Disable AMQP server config, to ensure we don't touch them with ADT
|
||||
# disabled
|
||||
for line in fileinput.input(self.britney_conf, inplace=True):
|
||||
if line.startswith('ADT_ENABLE'):
|
||||
print('ADT_ENABLE = no')
|
||||
elif not line.startswith('ADT_AMQP') and not line.startswith('ADT_SWIFT_URL'):
|
||||
sys.stdout.write(line)
|
||||
|
||||
exc = self.do_test(
|
||||
[('libgreen1', {'Version': '2', 'Source': 'green', 'Depends': 'libc6'}, 'autopkgtest')],
|
||||
{'green': (True, {})},
|
||||
{'green': [('old-version', '1'), ('new-version', '2')]})[1]
|
||||
self.assertNotIn('autopkgtest', exc['green']['tests'])
|
||||
|
||||
self.assertEqual(self.amqp_requests, set())
|
||||
self.assertEqual(self.pending_requests, None)
|
||||
|
||||
def test_ppas(self):
|
||||
'''Run test requests with additional PPAs'''
|
||||
|
||||
for line in fileinput.input(self.britney_conf, inplace=True):
|
||||
if line.startswith('ADT_PPAS'):
|
||||
print('ADT_PPAS = joe/foo awesome-developers/staging')
|
||||
else:
|
||||
sys.stdout.write(line)
|
||||
|
||||
self.do_test(
|
||||
[('lightgreen', {'Version': '2'}, 'autopkgtest')],
|
||||
{'lightgreen': (True, {'lightgreen 2': {'amd64': 'RUNNING-ALWAYSFAILED'}})},
|
||||
{'lightgreen': [('old-version', '1'), ('new-version', '2')]}
|
||||
)
|
||||
|
||||
self.assertEqual(
|
||||
self.amqp_requests,
|
||||
set(['debci-series-amd64:lightgreen {"triggers": ["lightgreen/2"], "ppas": ["joe/foo", "awesome-developers/staging"]}',
|
||||
'debci-series-i386:lightgreen {"triggers": ["lightgreen/2"], "ppas": ["joe/foo", "awesome-developers/staging"]}']))
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
unittest.main()
|
||||
|
Loading…
x
Reference in New Issue
Block a user