refstack-client doesn't recognize primary credential properly when using 'project_name' to set project name
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
refstack |
Invalid
|
Undecided
|
Unassigned |
Bug Description
accounts.yaml:
- username: 'test'
project_name: 'test'
password: 'choose-a-password'
- password: 'a_big_secret'
project_name: 'swift-test1'
username: 'swiftop-01'
roles:
- '_member_'
The test credential has create private network and router connect to external network.
It should be the primary credential for running non-swift tests.
And swift-test1 credential is for running swift tests, which without any network setting.
$ refstack-client test -c tempest.conf -v -- --regex tempest.
2018-09-06 14:55:15,667 refstack_client:320 WARNING Problems retrieving CPID from Keystone using v3 endpoint (http://
'scope/
Failed validating 'type' in schema[
{'type': 'string'}
On instance[
None)
2018-09-06 14:55:15,668 refstack_client:326 INFO Creating hash from endpoint to use as CPID.
2018-09-06 14:55:15,668 refstack_client:494 INFO Starting Tempest test...
running=
OS_STDERR_
OS_TEST_
OS_TEST_
${PYTHON:-python} -m subunit.run discover -t ${OS_TOP_LEVEL:-./} ${OS_TEST_
running=
OS_STDERR_
OS_TEST_
OS_TEST_
${PYTHON:-python} -m subunit.run discover -t ${OS_TOP_LEVEL:-./} ${OS_TEST_
{0} setUpClass (tempest.
=======
Failed 1 tests - output below:
=======
setUpClass (tempest.
-------
Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/home/
File "/home/
File "/home/
File "/home/
**kwargs)
File "/home/
File "/home/
File "/home/
File "/home/
File "/home/
raise ValueError('Unable to setup floating IP for validation: '
ValueError: Unable to setup floating IP for validation: port not found on tenant network
======
Totals
======
Ran: 1 tests in 19.0000 sec.
- Passed: 0
- Skipped: 0
- Expected Fail: 0
- Unexpected Success: 0
- Failed: 1
Sum of execute time for each test: 0.0000 sec.
It is failed because it use swift-test1 credential, which without any network setting, to run the test not test credential. Compute test use primary credential to run test which means refstack-client doesn't recognize test as the primary credential.
When changing accounts.yaml using tenant_name, the compute test can pass.
- username: 'test'
tenant_name: 'test'
password: 'choose-a-password'
- password: 'a_big_secret'
tenant_name: 'swift-test1'
username: 'swiftop-01'
roles:
- '_member_'
$ refstack-client test -c tempest.conf -v -- --regex tempest.
2018-09-06 15:04:36,868 refstack_client:494 INFO Starting Tempest test...
running=
OS_STDERR_
OS_TEST_
OS_TEST_
${PYTHON:-python} -m subunit.run discover -t ${OS_TOP_LEVEL:-./} ${OS_TEST_
running=
OS_STDERR_
OS_TEST_
OS_TEST_
${PYTHON:-python} -m subunit.run discover -t ${OS_TOP_LEVEL:-./} ${OS_TEST_
{0} tempest.
{0} tempest.
{0} tempest.
{0} tempest.
{0} tempest.
======
Totals
======
Ran: 5 tests in 54.0000 sec.
- Passed: 5
- Skipped: 0
- Expected Fail: 0
- Unexpected Success: 0
- Failed: 0
Sum of execute time for each test: 17.3173 sec.
tempest.conf: http://
tempest.log: see attached
Credential without any roles/types setting should be recognize as primary, right?