Allow jobs to disable all services
Several legacy jobs use the OVERRIDE_ENABLED_SERVICES variable from d-g so set the list of services that should be enabled and ignore the default set calculated via the feature matrix. Add support for a similar functionality in the zuulv3 jobs using the 'disable_all_services' localconf function. Change-Id: I690554ec62cef3be600054071efbb3f92a99249e
This commit is contained in:
parent
d576620e33
commit
5551170ad3
@ -54,6 +54,11 @@ Write the local.conf file for use by devstack
|
||||
boolean value is ``false``, a ``disable_service`` line will be
|
||||
emitted for the service name. If it is ``true``, then
|
||||
``enable_service`` will be emitted. All other values are ignored.
|
||||
The special key ``base`` can be used to enable or disable the base set of
|
||||
services enabled by default. If ``base`` is found, it will processed before
|
||||
all other keys. If its value is ``False`` a ``disable_all_services`` will be
|
||||
emitted; if its value is ``True`` nothing will be emitted since base
|
||||
services are enabled by default.
|
||||
|
||||
.. zuul:rolevar:: devstack_plugins
|
||||
:type: dict
|
||||
|
@ -124,6 +124,9 @@ class LocalConf(object):
|
||||
self.localrc.append('enable_plugin {} {}'.format(k, v))
|
||||
|
||||
def handle_services(self, services):
|
||||
base_services = services.pop('base', True)
|
||||
if not base_services:
|
||||
self.localrc.append('disable_all_services')
|
||||
for k, v in services.items():
|
||||
if v is False:
|
||||
self.localrc.append('disable_service {}'.format(k))
|
||||
|
Loading…
Reference in New Issue
Block a user