Update Ranger rms tempest and ormcli

1) rms tempest - add create_and_delete_region test case.
2) pass user_domain info to cmscli/fmscli/imscli.py.

Change-Id: I0404cc2084d2983914a66016be66a36897728a84
This commit is contained in:
stewie925 2019-06-07 11:31:33 -07:00 committed by Hari
parent ffd8306fe2
commit dcee1aded9
8 changed files with 67 additions and 11 deletions

View File

@ -32,8 +32,13 @@ def add_to_parser(service_sub):
default=get_environment_variable('tenant-name'))
parser.add_argument('--username', type=str, help='Keystone user name',
default=get_environment_variable('username'))
parser.add_argument('--user-domain', type=str, help='Keystone user domain',
default=get_environment_variable('user-domain'))
parser.add_argument('--password', type=str, help='Keystone user password',
default=get_environment_variable('password'))
parser.add_argument('--project-domain', type=str,
help='Keystone project domain',
default=get_environment_variable('project-domain'))
parser.add_argument('--rms-base-url', type=str, help='RMS base URL',
default=get_environment_variable('rms-base-url'))
parser.add_argument('--cms-base-url', type=str, help='CMS base URL',
@ -651,12 +656,15 @@ def get_token(timeout, args, host):
raise ConnectionError(
'Failed in get_token, host: {}, region: {}'.format(host,
auth_region))
user_domain = args.user_domain if args.user_domain else 'default'
project_domain = args.project_domain if args.project_domain else 'default'
url = url % (keystone_ep,)
data = data % (base_config.user_domain_name,
data = data % (user_domain,
username,
password,
tenant_name,
base_config.project_domain_name,)
project_domain,)
if args.verbose:
print(

View File

@ -31,8 +31,12 @@ def add_to_parser(service_sub):
default=get_environment_variable('tenant-name'))
parser.add_argument('--username', type=str, help='Keystone user name',
default=get_environment_variable('username'))
parser.add_argument('--user-domain', type=str, help='Keystone user domain',
default=get_environment_variable('user-domain'))
parser.add_argument('--password', type=str, help='Keystone user password',
default=get_environment_variable('password'))
parser.add_argument('--project-domain', type=str, help='Keystone project domain',
default=get_environment_variable('project-domain'))
parser.add_argument('--rms-base-url', type=str, help='RMS base URL',
default=get_environment_variable('rms-base-url'))
parser.add_argument('--fms-base-url', type=str, help='FMS base URL',
@ -340,12 +344,15 @@ def get_token(timeout, args, host):
raise ConnectionError(
'Failed in get_token, host: {}, region: {}'.format(host,
auth_region))
user_domain = args.user_domain if args.user_domain else 'default'
project_domain = args.project_domain if args.project_domain else 'default'
url = url % (keystone_ep,)
data = data % (base_config.user_domain_name,
data = data % (user_domain,
username,
password,
tenant_name,
base_config.project_domain_name,)
project_domain,)
if args.verbose:
print(

View File

@ -32,8 +32,13 @@ def add_to_parser(service_sub):
default=get_environment_variable('tenant-name'))
parser.add_argument('--username', type=str, help='Keystone user name',
default=get_environment_variable('username'))
parser.add_argument('--user-domain', type=str, help='Keystone user domain',
default=get_environment_variable('user-domain'))
parser.add_argument('--password', type=str, help='Keystone user password',
default=get_environment_variable('password'))
parser.add_argument('--project-domain', type=str,
help='Keystone project domain',
default=get_environment_variable('project-domain'))
parser.add_argument('--rms-base-url', type=str, help='RMS base URL',
default=get_environment_variable('rms-base-url'))
parser.add_argument('--ims-base-url', type=str, help='IMS base URL',
@ -233,8 +238,15 @@ def get_token(timeout, args, host):
raise ConnectionError(
'Failed in get_token, host: {}, region: {}'.format(host,
auth_region))
user_domain = args.user_domain if args.user_domain else 'default'
project_domain = args.project_domain if args.project_domain else 'default'
url = url % (keystone_ep,)
data = data % (base_config.user_domain_name, username, password, tenant_name, base_config.project_domain_name,)
data = data % (user_domain,
username,
password,
tenant_name,
project_domain,)
if args.verbose:
print(

View File

@ -30,8 +30,13 @@ def add_to_parser(service_sub):
default=get_environment_variable('tenant-name'))
parser.add_argument('--username', type=str, help='Keystone user name',
default=get_environment_variable('username'))
parser.add_argument('--user-domain', type=str, help='Keystone user domain',
default=get_environment_variable('user-domain'))
parser.add_argument('--password', type=str, help='Keystone user password',
default=get_environment_variable('password'))
parser.add_argument('--project-domain', type=str,
help='Keystone project domain',
default=get_environment_variable('project-domain'))
parser.add_argument('--rms-base-url', type=str, help='RMS base URL',
default=get_environment_variable('rms-base-url'))
parser.add_argument('--tracking_id', type=str, help='tracking id')
@ -256,9 +261,15 @@ def get_token(timeout, args, host):
raise ConnectionError(
'Failed in get_token, host: {}, region: {}'.format(host,
auth_region))
user_domain = args.user_domain if args.user_domain else 'default'
project_domain = args.project_domain if args.project_domain else 'default'
url = url % (keystone_ep,)
data = data % (base_config.user_domain_name, username, password,
tenant_name, base_config.project_domain_name,)
data = data % (user_domain,
username,
password,
tenant_name,
project_domain,)
if args.verbose:
print(

View File

@ -299,7 +299,7 @@ class CmsTests(TestCase):
cli = ormcli.Cli()
cli.create_parser()
cli.parse(
'orm cms list_customers --region 2 --user bob client1'.split())
'orm cms list_customers --region 2 client1'.split())
resp = self.respond('{"Hi, mom"}', 200, {'X-Subject-Token': 989})
mock_post.return_value = self.respond(
{"access": {"token": {"id": 989}}}, 200)

View File

@ -21,6 +21,7 @@ from tempest.lib.common.utils import data_utils
LOG = logging.getLogger(__name__)
CONF = config.CONF
identity_url = CONF.identity.uri_v3.strip('/v3')
def rand_region_status(exclude=[]):
@ -65,7 +66,7 @@ def rand_region(id=None):
'publicURL': data_utils.rand_url(),
'type': 'dashboard'
}, {
'publicURL': data_utils.rand_url(),
'publicURL': identity_url,
'type': 'identity'
}, {
'publicURL': data_utils.rand_url(),

View File

@ -28,6 +28,7 @@ CONF = config.CONF
class RmsClient(base_client.RangerClientBase):
rms_url = CONF.ranger.RANGER_RMS_BASE_URL
identity_url = CONF.identity.uri_v3.strip('/v3')
version = "v2"
def create_region(self, region_id, **kwargs):
@ -57,8 +58,7 @@ class RmsClient(base_client.RangerClientBase):
'type': 'dashboard'
},
{
'publicURL':
'https://identity-ranger.%s.com:5000' % region_id,
'publicURL': self.identity_url,
'type': 'identity'
},
{

View File

@ -19,6 +19,7 @@ from ranger_tempest_plugin.tests.api import rms_base
from tempest import config
from tempest.lib.common.utils import data_utils
from tempest.lib import decorators
from tempest.lib import exceptions
CONF = config.CONF
@ -56,6 +57,22 @@ class TestTempestRegion(rms_base.RmsBaseOrmTest):
cls.client.delete_region(region_id)
super(TestTempestRegion, cls).resource_cleanup()
@decorators.idempotent_id('829c7da0-2332-4f80-ad35-24306b67ed0e')
def test_create_and_delete_region(self):
# create new region for API test
region = orm_data_utils.rand_region()
_, region_body = self.client.create_region(region['id'], **region)
test_region_name = region_body['name']
test_region_id = region_body['id']
_, body = self.client.get_region(test_region_name)
self.assertEqual(test_region_id, body['id'])
# now delete the region
self.client.delete_region(test_region_id)
self.assertRaises(exceptions.NotFound, self.client.get_region,
test_region_id)
@decorators.idempotent_id('eecedcb0-9c96-453d-bd72-71dba26fa1c5')
def test_list_region(self):
_, body = self.client.list_regions()