Hanna Arhipova | e6ed8e4 | 2019-05-15 16:27:08 +0300 | [diff] [blame] | 1 | import pytest |
| 2 | |
| 3 | |
| 4 | def test_cinder_services_are_up(local_salt_client, check_cinder_backends): |
| 5 | """ |
| 6 | # Make sure that cinder backend exists with next command: `salt -C "I@cinder:controller" pillar.get cinder:controller:backend` |
| 7 | # Check that all services has 'Up' status in output of `cinder service-list` on keystone:server nodes |
| 8 | """ |
| 9 | service_down = local_salt_client.cmd_any( |
| 10 | tgt='keystone:server', |
| 11 | param='. /root/keystonercv3; cinder service-list | grep "down\|disabled"') |
| 12 | assert service_down == '', \ |
| 13 | '''Some cinder services are in wrong state''' |
| 14 | |
| 15 | |
| 16 | def test_cinder_services_has_all_backends(local_salt_client, check_cinder_backends): |
| 17 | """ |
| 18 | # Make sure that cinder backend exists with next command: `salt -C "I@cinder:controller" pillar.get cinder:controller:backend` |
| 19 | # Check that quantity of backend in cinder:controller:backend pillar is similar to list of volumes in cinder service-list |
| 20 | """ |
| 21 | backends_cinder = local_salt_client.pillar_get( |
| 22 | tgt='cinder:controller', |
| 23 | param='cinder:controller:backend' |
| 24 | ) |
| 25 | cinder_volume = local_salt_client.cmd_any( |
| 26 | tgt='keystone:server', |
| 27 | param='. /root/keystonercv3; cinder service-list | grep "volume" |grep -c -v -e "lvm"') |
| 28 | print(backends_cinder) |
| 29 | print(cinder_volume) |
| 30 | backends_num = len(backends_cinder.keys()) |
| 31 | assert cinder_volume == str(backends_num), \ |
| 32 | 'Number of cinder-volume services ({0}) does not match ' \ |
| 33 | 'number of volume backends ({1})'.format( |
| 34 | cinder_volume, str(backends_num)) |