Allow removing of options from tempest conf

This patch gives the option to pass parameters to tempest to
remove certain keys while generating tempest.conf by passing
it as tempest_conf_removal.

The tempest_conf_removal is applied in the final stage and
as such overrides even if values were prevously set.

dvr is default value in tempest_conf_removal - neutron extension.
python-tempestconf gets all available neutron extensions, even if
they are not enabled in a deployment. dvr is not generally configured
so to avoid failed tests, it's removed from tempest.conf

Change-Id: I708866aa3218b2e3c25e9b47672237bc1838d760
This commit is contained in:
Prateek Arora 2017-06-23 19:48:37 +05:30 committed by Sagi Shnaidman
parent 0c451d80ea
commit 6ac97afeaf
3 changed files with 13 additions and 1 deletions

View File

@ -34,6 +34,9 @@ Role Variables
installed
* `tempest_extra_config`: dict - A dict of tempest configuration which needs to be overridden in tempest.conf,
It should be like section.key: value.
* `tempest_conf_removal`: dict - A dict of tempest configuration which will be
removed from tempest.conf file.
Format: section.key: value
Skip tests file
---------------

View File

@ -39,3 +39,6 @@ tempest_version: "{{ tempest_version_dict[release] }}"
tempestmail_config: config.yaml
tempest_track_resources: true
tempest_test_image_path: http://download.cirros-cloud.net/0.3.5/cirros-0.3.5-x86_64-disk.img
# A dict containing values to be removed from tempest.conf
tempest_conf_removal:
network-feature-enabled.api_extensions: dvr

View File

@ -148,7 +148,13 @@ ${TEMPESTCONF} --out etc/tempest.conf \
--network-id $public_net_id \
--deployer-input ~/{{ tempest_deployer_input_file }} \
--image {{ tempest_test_image_path }} \
--debug --create \
--debug \
{% if tempest_conf_removal %}
{% for key, value in tempest_conf_removal.iteritems() %}
--remove {{ key }}={{ value }} \
{% endfor %}
{% endif %}
--create \
{% if release in ['newton','ocata', 'pike'] %}
identity.uri $OS_AUTH_URL \
identity.admin_password $OS_PASSWORD \