From 6ac97afeaffbbfcc20600c094c79e8c152c98be0 Mon Sep 17 00:00:00 2001 From: Prateek Arora Date: Fri, 23 Jun 2017 19:48:37 +0530 Subject: [PATCH] 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 --- roles/validate-tempest/README.md | 3 +++ roles/validate-tempest/defaults/main.yml | 3 +++ roles/validate-tempest/templates/configure-tempest.sh.j2 | 8 +++++++- 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/roles/validate-tempest/README.md b/roles/validate-tempest/README.md index b05d74651..d25c17d54 100644 --- a/roles/validate-tempest/README.md +++ b/roles/validate-tempest/README.md @@ -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 --------------- diff --git a/roles/validate-tempest/defaults/main.yml b/roles/validate-tempest/defaults/main.yml index 9f91dedea..6cdaafdbc 100644 --- a/roles/validate-tempest/defaults/main.yml +++ b/roles/validate-tempest/defaults/main.yml @@ -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 diff --git a/roles/validate-tempest/templates/configure-tempest.sh.j2 b/roles/validate-tempest/templates/configure-tempest.sh.j2 index eba6ed640..7c80d2682 100644 --- a/roles/validate-tempest/templates/configure-tempest.sh.j2 +++ b/roles/validate-tempest/templates/configure-tempest.sh.j2 @@ -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 \