def test_cinder_ceph_restrict_pool_setup(self): """Make sure cinder-ceph restrict pool was created successfully.""" logging.info('Wait for idle/ready status...') zaza_model.wait_for_application_states() pools = zaza_ceph.get_ceph_pools('ceph-mon/0') if 'cinder-ceph' not in pools: msg = 'cinder-ceph pool was not found upon querying ceph-mon/0' raise zaza_exceptions.CephPoolNotFound(msg) # Checking for cinder-ceph specific permissions makes # the test more rugged when we add additional relations # to ceph for other applications (such as glance and nova). expected_permissions = [ "allow rwx pool=cinder-ceph", "allow class-read object_prefix rbd_children", ] cmd = "sudo ceph auth get client.cinder-ceph" result = zaza_model.run_on_unit('ceph-mon/0', cmd) output = result.get('Stdout').strip() for expected in expected_permissions: if expected not in output: msg = ('cinder-ceph pool restriction ({}) was not' ' configured correctly.' ' Found: {}'.format(expected, output)) raise zaza_exceptions.CephPoolNotConfigured(msg)
def test_cinder_ceph_restrict_pool_setup(self): """Make sure cinder-ceph restrict pool was created successfully.""" logging.info('Wait for idle/ready status...') zaza_model.wait_for_application_states() pools = zaza_ceph.get_ceph_pools('ceph-mon/0') if 'cinder-ceph' not in pools: msg = 'cinder-ceph pool was not found upon querying ceph-mon/0' raise zaza_exceptions.CephPoolNotFound(msg) expected = "pool=cinder-ceph, allow class-read " \ "object_prefix rbd_children" cmd = "sudo ceph auth get client.cinder-ceph" result = zaza_model.run_on_unit('ceph-mon/0', cmd) output = result.get('Stdout').strip() if expected not in output: msg = ('cinder-ceph pool restriction was not configured correctly.' ' Found: {}'.format(output)) raise zaza_exceptions.CephPoolNotConfigured(msg)