Files
devstack-gate/features.yaml
Sean Dague ccc4324855 feature matrix definition in yaml
This adds a definition mechanism for the d-g feature matrix in
yaml, a python tool to process that into an ENABLED_SERVICES list
and a test script to verify that it works as expected.

The theory here is that we create configs (which match to d-g
DEVSTACK_GATE_ vars) that enable or disable "features". The
features then enable or disable "services" (and eventually
extensions).

An important part of this is the ability to rm-* content. That
means the neutron feature can rm-services: n-net. The hope is
this makes reviewing changes more straight forward, and also
makes it so if something goes wrong we don't run a job missing
services, because we don't need to make sure we add things in
the else clauses.

A follow up patch integrates this into d-g proper, but this
patch seemed easier to review on it's own.

Change-Id: Ib030f820073dd0b450b362fd721f9477778c04b0
2014-04-16 07:54:29 -04:00

123 lines
2.6 KiB
YAML

config:
default:
master: [default, ceilometer, glance, horizon, nova, swift, cinder, keystone, heat, trove]
icehouse: [default, ceilometer, glance, horizon, nova, swift, cinder, keystone, heat, trove]
havana: [default, ceilometer, glance, horizon, nova, swift, cinder, keystone, heat]
neutron:
features: [neutron]
# different backends
postgres:
features: [postgresql]
# feature changes for different test matrixes
grenade:
rm-features: [ceilometer, heat, trove, sahara]
tempest:
features: [tempest]
# feature changes for different configs of existing services
nova_api_metadata_split:
features: [nova-md]
cells:
features: [nova-cells]
# feature declarations for incubated or recently integrated projects (so they
# can be tested outside the releases they were supported in)
trove:
features: [trove]
marconi:
features: [marconi]
sahara:
features: [sahara]
ironic:
features: [ironic]
features:
default:
base:
services: [mysql, rabbit, dstat]
ceilometer:
base:
services: [ceilometer-acompute, ceilometer-acentral, ceilometer-collector, ceilometer-api, ceilometer-alarm-notifier, ceilometer-alarm-evaluator, ceilometer-anotification]
havana:
rm-services: [ceilometer-alarm-notifier, ceilometer-alarm-evaluator, ceilometer-anotification]
glance:
base:
services: [g-api, g-reg]
keystone:
base:
services: [key]
horizon:
base:
services: [horizon]
nova:
base:
services: [n-api, n-cond, n-cpu, n-crt, n-net, n-obj, n-sch]
havana:
rm-compute-ext:
icehouse:
compute-ext:
nova-md:
base:
services: [n-api-meta]
nova-cells:
base:
services: [n-cell]
rm-compute-ext: [agregates, hosts]
neutron:
base:
services: [quantum, q-svc, q-agt, q-dhcp, q-l3, q-meta, q-lbaas, q-vpn, q-fwaas, q-metering]
rm-services: [n-net]
swift:
base:
services: [s-proxy, s-account, s-container, s-object]
cinder:
base:
services: [cinder, c-api, c-vol, c-sch, c-bak]
heat:
base:
services: [heat, h-api, h-api-cfn, h-api-cw, h-eng]
trove:
base:
services: [trove, tr-api, tr-tmgr, tr-cond]
ironic:
base:
services: [ir-api, ir-cond]
sahara:
base:
services: [sahara]
marconi:
base:
services: [marconi-server]
tempest:
base:
services: [tempest]
# service overrides
postgresql:
base:
services: [postgresql]
rm-services: [mysql]
zeromq:
base:
services: [zeromq]
rm-services: [rabbit]
qpid:
base:
services: [qpid]
rm-services: [rabbit]