Add features.yaml entry for 'no services'

Previously service selection was only additive on top of the default
set of services for a given branch.  In order to support more
efficient functional job definitions, this change adds the option
of setting DEVSTACK_GATE_NO_SERVICES to ensure that the default
set is minimal (mysql, rabbit, dstat at the time of this patch).

Change-Id: Ie20f611b5c5debe96df1001df5d19eb24b93c519
This commit is contained in:
Maru Newby 2014-08-26 15:30:44 +02:00
parent a7009df479
commit 2ac355640a
2 changed files with 7 additions and 1 deletions

View File

@ -4,6 +4,9 @@ config:
juno: [default, ceilometer, glance, horizon, nova, swift, cinder, keystone, heat, trove, sahara]
icehouse: [default, ceilometer, glance, horizon, nova, swift, cinder, keystone, heat, trove]
havana: [default, ceilometer, glance, horizon, nova, swift, cinder, keystone, heat]
# This can be used by functional jobs that only want their dependencies installed
# and don't need to incur the overhead of installing all services in the process.
no_services: [default]
neutron:
features: [neutron]
# different backends

View File

@ -95,7 +95,10 @@ def calc_services(branch, features):
def calc_features(branch, configs=[]):
LOG.debug("Branch: %s" % branch)
LOG.debug("Configs: %s" % configs)
features = set(GRID['config']['default'][branch])
if os.environ.get('DEVSTACK_GATE_NO_SERVICES') not in FALSE_VALUES:
features = set(GRID['config']['default']['no_services'])
else:
features = set(GRID['config']['default'][branch])
# do all the adds first
for config in configs:
if config in GRID['config']: