Bug 1554306 - Discover-tempest-config is missing from latest OSP13 (2018-03-02.2)
Summary: Discover-tempest-config is missing from latest OSP13 (2018-03-02.2)
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: openstack-tempest
Version: 13.0 (Queens)
Hardware: Unspecified
OS: Unspecified
medium
medium
Target Milestone: beta
: 13.0 (Queens)
Assignee: Chandan Kumar
QA Contact: Martin Kopec
URL:
Whiteboard:
: 1553421 (view as bug list)
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2018-03-12 12:00 UTC by Noam Manos
Modified: 2018-06-27 13:35 UTC (History)
9 users (show)

Fixed In Version: openstack-tempest-18.0.0-0.20180308115755.b9f9f89.el7ost
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
: 1557736 (view as bug list)
Environment:
Last Closed: 2018-06-27 13:35:18 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
tempest.conf created after workaround (4.87 KB, text/plain)
2018-03-13 06:38 UTC, Noam Manos
no flags Details


Links
System ID Private Priority Status Summary Last Updated
RDO 12806 0 None queens-rdo: MERGED openstack/tempest-distgit: Disable repo_bootstrap in tempest (Idf1b9ee1e02d87f934295458d293134b72963c9b) 2018-03-21 13:51:28 UTC
Red Hat Product Errata RHEA-2018:2086 0 None None None 2018-06-27 13:35:57 UTC

Comment 2 Jon Schlueter 2018-03-12 15:07:01 UTC
Description of problem: Using a director based install and the latest puddle, the discover-tempest-config command is not found


Version-Release number of selected component (if applicable):
OSP: 13   
Puddle: 2018-03-02.2

How reproducible - 
Always

Steps to Reproduce:
Install OSP-13 (master branch).

[stack@undercloud-0 ~]$ source overcloudrc
[stack@undercloud-0 ~]$ tempest init my_workspace
[stack@undercloud-0 ~]$ cd my_workspace
[stack@undercloud-0 my_workspace]$ discover-tempest-config --deployer-input ~/tempest-deployer-input.conf --debug --create
-bash: discover-tempest-config: command not found

Comment 3 Chandan Kumar 2018-03-12 15:13:47 UTC
*** Bug 1553421 has been marked as a duplicate of this bug. ***

Comment 4 Noam Manos 2018-03-13 06:23:12 UTC
Trying to workaround by initially installing python-tempestconf:
$ sudo yum -y install python-tempestconf

Resolved the above error, but introduced a new error when attempting to run tempest verify-config:


(overcloud) [stack@undercloud-0 ~]$ tempest verify-config -o ./etc/tempest.confRunning config verification...2018-03-12 03:27:09.510 1152 INFO tempest [-] Using tempest config file /etc/tempest/tempest.conf2018-03-12 03:27:09.531 1152 ERROR tempest.cmd.verify_tempest_config [-] Failure verifying configuration.: InvalidCredentials: Invalid CredentialsDetails: Credentials are: {username: None, project_name: None, project_domain_id: None, user_domain_id: None, tenant_id: None, user_domain_name: None, domain_name: None, tenant_name: None, user_id: None, project_id: None, domain_id: None, project_domain_name: None} Password is not defined.2018-03-12 03:27:09.531 1152 ERROR tempest.cmd.verify_tempest_config Traceback (most recent call last):2018-03-12 03:27:09.531 1152 ERROR tempest.cmd.verify_tempest_config   File /home/stack/tempest/tempest/cmd/verify_tempest_config.py, line 486, in take_action2018-03-12 03:27:09.531 1152 ERROR tempest.cmd.verify_tempest_config     main(parsed_args)2018-03-12 03:27:09.531 1152 ERROR tempest.cmd.verify_tempest_config   File /home/stack/tempest/tempest/cmd/verify_tempest_config.py, line 450, in main2018-03-12 03:27:09.531 1152 ERROR tempest.cmd.verify_tempest_config     verify_tempest_config, network_resources=net_resources)2018-03-12 03:27:09.531 1152 ERROR tempest.cmd.verify_tempest_config   File /home/stack/tempest/tempest/common/credentials_factory.py, line 141, in get_credentials_provider2018-03-12 03:27:09.531 1152 ERROR tempest.cmd.verify_tempest_config     **get_dynamic_provider_params(identity_version))2018-03-12 03:27:09.531 1152 ERROR tempest.cmd.verify_tempest_config   File /home/stack/tempest/tempest/common/credentials_factory.py, line 73, in get_dynamic_provider_params2018-03-12 03:27:09.531 1152 ERROR tempest.cmd.verify_tempest_config     fill_in=True, identity_version=identity_version)2018-03-12 03:27:09.531 1152 ERROR tempest.cmd.verify_tempest_config   File /home/stack/tempest/tempest/common/credentials_factory.py, line 254, in get_configured_admin_credentials2018-03-12 03:27:09.531 1152 ERROR tempest.cmd.verify_tempest_config     identity_version=identity_version, **params)2018-03-12 03:27:09.531 1152 ERROR tempest.cmd.verify_tempest_config   File /home/stack/tempest/tempest/common/credentials_factory.py, line 298, in get_credentials2018-03-12 03:27:09.531 1152 ERROR tempest.cmd.verify_tempest_config     **params)2018-03-12 03:27:09.531 1152 ERROR tempest.cmd.verify_tempest_config   File /home/stack/tempest/tempest/lib/auth.py, line 647, in get_credentials2018-03-12 03:27:09.531 1152 ERROR tempest.cmd.verify_tempest_config     http_timeout=http_timeout, proxy_url=proxy_url)2018-03-12 03:27:09.531 1152 ERROR tempest.cmd.verify_tempest_config   File /home/stack/tempest/tempest/lib/auth.py, line 265, in __init__2018-03-12 03:27:09.531 1152 ERROR tempest.cmd.verify_tempest_config     super(KeystoneAuthProvider, self).__init__(credentials, scope)2018-03-12 03:27:09.531 1152 ERROR tempest.cmd.verify_tempest_config   File /home/stack/tempest/tempest/lib/auth.py, line 93, in __init__2018-03-12 03:27:09.531 1152 ERROR tempest.cmd.verify_tempest_config     raise exceptions.InvalidCredentials(message)2018-03-12 03:27:09.531 1152 ERROR tempest.cmd.verify_tempest_config InvalidCredentials: Invalid Credentials2018-03-12 03:27:09.531 1152 ERROR tempest.cmd.verify_tempest_config Details: Credentials are: {username: None, project_name: None, project_domain_id: None, user_domain_id: None, tenant_id: None, user_domain_name: None, domain_name: None, tenant_name: None, user_id: None, project_id: None, domain_id: None, project_domain_name: None} Password is not defined.2018-03-12 03:27:09.531 1152 ERROR tempest.cmd.verify_tempest_config Traceback (most recent call last):  File /home/stack/tempest/tempest/cmd/verify_tempest_config.py, line 486, in take_action    main(parsed_args)  File /home/stack/tempest/tempest/cmd/verify_tempest_config.py, line 450, in main    verify_tempest_config, network_resources=net_resources)  File /home/stack/tempest/tempest/common/credentials_factory.py, line 141, in get_credentials_provider    **get_dynamic_provider_params(identity_version))  File /home/stack/tempest/tempest/common/credentials_factory.py, line 73, in get_dynamic_provider_params    fill_in=True, identity_version=identity_version)  File /home/stack/tempest/tempest/common/credentials_factory.py, line 254, in get_configured_admin_credentials    identity_version=identity_version, **params)  File /home/stack/tempest/tempest/common/credentials_factory.py, line 298, in get_credentials    **params)  File /home/stack/tempest/tempest/lib/auth.py, line 647, in get_credentials    http_timeout=http_timeout, proxy_url=proxy_url)  File /home/stack/tempest/tempest/lib/auth.py, line 265, in __init__    super(KeystoneAuthProvider, self).__init__(credentials, scope)  File /home/stack/tempest/tempest/lib/auth.py, line 93, in __init__    raise exceptions.InvalidCredentials(message)InvalidCredentials: Invalid CredentialsDetails: Credentials are: {username: None, project_name: None, project_domain_id: None, user_domain_id: None, tenant_id: None, user_domain_name: None, domain_name: None, tenant_name: None, user_id: None, project_id: None, domain_id: None, project_domain_name: None} Password is not defined.2018-03-12 03:27:09.533 1152 ERROR tempest [-] Invalid CredentialsDetails: Credentials are: {username: None, project_name: None, project_domain_id: None, user_domain_id: None, tenant_id: None, user_domain_name: None, domain_name: None, tenant_name: None, user_id: None, project_id: None, domain_id: None, project_domain_name: None} Password is not defined.: InvalidCredentials: Invalid Credentials(overcloud) (.venv) [stack@undercloud-0 ~]$ cd my_workspace/(overcloud) (.venv) [stack@undercloud-0 my_workspace]$ tempest verify-config -o ./etc/tempest.confRunning config verification...Traceback (most recent call last):  File /home/stack/tempest/tempest/cmd/verify_tempest_config.py, line 486, in take_action    main(parsed_args)  File /home/stack/tempest/tempest/cmd/verify_tempest_config.py, line 458, in main    results = verify_extensions(os, service, results)  File /home/stack/tempest/tempest/cmd/verify_tempest_config.py, line 286, in verify_extensions    if extensions_opt[0] == all:IndexError: list index out of range

Comment 5 Noam Manos 2018-03-13 06:38:02 UTC
Created attachment 1407437 [details]
tempest.conf created after workaround

Comment 6 Noam Manos 2018-03-13 06:42:20 UTC
The new error (after workaround "yum -y install python-tempestconf") is merely:

(overcloud) [stack@undercloud-0 my_workspace]$ tempest verify-config -o ./etc/tempest.conf
Running config verification...

Traceback (most recent call last):
  File "/home/stack/tempest/tempest/cmd/verify_tempest_config.py", line 486, in take_action
    main(parsed_args)
  File "/home/stack/tempest/tempest/cmd/verify_tempest_config.py", line 458, in main
    results = verify_extensions(os, service, results)
  File "/home/stack/tempest/tempest/cmd/verify_tempest_config.py", line 286, in verify_extensions
    if extensions_opt[0] == 'all':
IndexError: list index out of range

--------

Attaching tempest.conf file that was created after workaround.

Comment 7 Noam Manos 2018-03-13 09:47:01 UTC
Found failure causes of tempest verify-config error. Please fix:

1) In "verify_tempest_config.py" (line 286):

Method "verify_extensions" does not check if "get_enabled_extensions(service)" has return an empty list. 

Please handle empty list error - if extensions_opt is empty: Print proper message like "Service {service} has no extensions defined in tempest.conf".

2) In "/usr/lib/python2.7/site-packages/config_tempest/config_tempest.py":

There's a failure in discovering "api_extensions" of "volume-feature-enabled" (cinder ?), which creates an empty value in tempest.conf (attached):

[volume-feature-enabled]
api_extensions =

Comment 8 Luigi Toscano 2018-03-16 13:16:00 UTC
I think I've seen issues with verify-config has troubles with non-core components. Also, verify-config is a subcommand, part of tempest, unrelated to this issue. Please track it separately.

Comment 9 Noam Manos 2018-03-18 08:06:17 UTC
Created a related Bug #1557736, to separate current issue (python-tempestconf requirement) from tempest verify-config error.

Comment 10 Jon Schlueter 2018-03-21 16:13:04 UTC
build failed

4756 ==============================
4757 Failed 1 tests - output below:
4758 ==============================
4759 tempest.tests.test_test.TestValidationResources.test_validation_resources_exists
4760 --------------------------------------------------------------------------------
4761 Captured traceback:
4762 ~~~~~~~~~~~~~~~~~~~
4763     Traceback (most recent call last):
4764       File "tempest/tests/test_test.py", line 76, in test_validation_resources_exists
4765         osclients = clients.Manager(creds)
4766       File "tempest/clients.py", line 37, in __init__
4767         region=CONF.identity.region)
4768       File "/usr/lib/python2.7/site-packages/debtcollector/removals.py", line 261, in wrapper
4769         return f(*args, **kwargs)
4770       File "tempest/lib/services/clients.py", line 361, in __init__
4771         all_modules = available_modules()
4772       File "tempest/lib/services/clients.py", line 87, in available_modules
4773         plugin_services[plugin_name]])
4774     KeyError: 'service_version'

Comment 11 Jon Schlueter 2018-03-21 16:41:15 UTC
Synced rest of the .spec file changes from RDO and seems to be building

Comment 16 Martin Kopec 2018-04-17 17:11:42 UTC
A package openstack-tempest-18.0.0-2 is available in RHOS13's repository.
The issue with missing discover-tempest-config was resolved in that package.

Tested on RHOS13 installed from master, puddle 2018-04-10.2.

Based on my testing, I'm marking this bug as VERIFIED.

Comment 18 errata-xmlrpc 2018-06-27 13:35:18 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHEA-2018:2086


Note You need to log in before you can comment on or make changes to this bug.