def test_endpoint_type(self): auth_session, auth_plugin = setup_keystone_v3() # Test default behavior is to choose public. self.client = client.construct_http_client( username=USERNAME, tenant_name=TENANT_NAME, password=PASSWORD, auth_url=AUTH_URL, region_name=REGION, session=auth_session, auth=auth_plugin) self.client.authenticate() self.assertEqual(self.client.endpoint_url, PUBLIC_ENDPOINT_URL) # Test admin url self.client = client.construct_http_client( username=USERNAME, tenant_name=TENANT_NAME, password=PASSWORD, auth_url=AUTH_URL, region_name=REGION, endpoint_type='adminURL', session=auth_session, auth=auth_plugin) self.client.authenticate() self.assertEqual(self.client.endpoint_url, ADMIN_ENDPOINT_URL) # Test public url self.client = client.construct_http_client( username=USERNAME, tenant_name=TENANT_NAME, password=PASSWORD, auth_url=AUTH_URL, region_name=REGION, endpoint_type='publicURL', session=auth_session, auth=auth_plugin) self.client.authenticate() self.assertEqual(self.client.endpoint_url, PUBLIC_ENDPOINT_URL) # Test internal url self.client = client.construct_http_client( username=USERNAME, tenant_name=TENANT_NAME, password=PASSWORD, auth_url=AUTH_URL, region_name=REGION, endpoint_type='internalURL', session=auth_session, auth=auth_plugin) self.client.authenticate() self.assertEqual(self.client.endpoint_url, INTERNAL_ENDPOINT_URL) # Test url that isn't found in the service catalog self.client = client.construct_http_client( username=USERNAME, tenant_name=TENANT_NAME, password=PASSWORD, auth_url=AUTH_URL, region_name=REGION, endpoint_type='privateURL', session=auth_session, auth=auth_plugin) self.assertRaises( ks_exceptions.EndpointNotFound, self.client.authenticate)
def test_endpoint_type(self, mrequests): auth_session, auth_plugin = setup_keystone_v3(mrequests) # Test default behavior is to choose public. self.client = client.construct_http_client( username=USERNAME, tenant_name=TENANT_NAME, password=PASSWORD, auth_url=AUTH_URL, region_name=REGION, session=auth_session, auth=auth_plugin) self.client.authenticate() self.assertEqual(self.client.endpoint_url, PUBLIC_ENDPOINT_URL) # Test admin url self.client = client.construct_http_client( username=USERNAME, tenant_name=TENANT_NAME, password=PASSWORD, auth_url=AUTH_URL, region_name=REGION, endpoint_type='adminURL', session=auth_session, auth=auth_plugin) self.client.authenticate() self.assertEqual(self.client.endpoint_url, ADMIN_ENDPOINT_URL) # Test public url self.client = client.construct_http_client( username=USERNAME, tenant_name=TENANT_NAME, password=PASSWORD, auth_url=AUTH_URL, region_name=REGION, endpoint_type='publicURL', session=auth_session, auth=auth_plugin) self.client.authenticate() self.assertEqual(self.client.endpoint_url, PUBLIC_ENDPOINT_URL) # Test internal url self.client = client.construct_http_client( username=USERNAME, tenant_name=TENANT_NAME, password=PASSWORD, auth_url=AUTH_URL, region_name=REGION, endpoint_type='internalURL', session=auth_session, auth=auth_plugin) self.client.authenticate() self.assertEqual(self.client.endpoint_url, INTERNAL_ENDPOINT_URL) # Test url that isn't found in the service catalog self.client = client.construct_http_client( username=USERNAME, tenant_name=TENANT_NAME, password=PASSWORD, auth_url=AUTH_URL, region_name=REGION, endpoint_type='privateURL', session=auth_session, auth=auth_plugin) self.assertRaises( ks_exceptions.EndpointNotFound, self.client.authenticate)
def __init__(self, **kwargs): """Initialize a new client for the GBP v2.0 API.""" super(Client, self).__init__() self.retries = kwargs.pop('retries', 0) self.raise_errors = kwargs.pop('raise_errors', True) self.httpclient = client.construct_http_client(**kwargs) self.version = '2.0' self.format = 'json' self.action_prefix = "/v%s" % (self.version) self.retry_interval = 1
def __init__(self, **kwargs): """Initialize a new client for the GBP v2.0 API.""" super(Client, self).__init__() self.retries = kwargs.pop('retries', 0) self.raise_errors = kwargs.pop('raise_errors', True) self.httpclient = client.construct_http_client(**kwargs) self.version = '2.0' self.format = 'json' self.action_prefix = "/v%s" % (self.version) self.retry_interval = 1
def __init__(self, **kwargs): """Initialize new client for BaremetalNetworkProvisioning v2.0 API.""" super(Client, self).__init__() self.retries = kwargs.pop('retries', 0) self.raise_errors = kwargs.pop('raise_errors', True) self.httpclient = client.construct_http_client(**kwargs) self.version = '2.0' self.format = 'json' self.action_prefix = "/v%s" % (self.version) self.retry_interval = 1 self._register_extensions(self.version)
def __init__(self, **kwargs): """Initialize new client for BaremetalNetworkProvisioning v2.0 API.""" super(Client, self).__init__() self.retries = kwargs.pop('retries', 0) self.raise_errors = kwargs.pop('raise_errors', True) self.httpclient = client.construct_http_client(**kwargs) self.version = '2.0' self.format = 'json' self.action_prefix = "/v%s" % (self.version) self.retry_interval = 1 self._register_extensions(self.version)
def setUp(self): """Prepare the test environment.""" super(CLITestAuthKeystone, self).setUp() self.mox = mox.Mox() for var in ("http_proxy", "HTTP_PROXY"): self.useFixture(fixtures.EnvironmentVariableFixture(var)) self.client = client.construct_http_client( username=USERNAME, tenant_name=TENANT_NAME, password=PASSWORD, auth_url=AUTH_URL, region_name=REGION ) self.addCleanup(self.mox.VerifyAll) self.addCleanup(self.mox.UnsetStubs)
def setUp(self): """Prepare the test environment.""" super(CLITestAuthKeystone, self).setUp() self.mox = mox.Mox() self.client = client.construct_http_client( username=USERNAME, tenant_name=TENANT_NAME, password=PASSWORD, auth_url=AUTH_URL, region_name=REGION) self.addCleanup(self.mox.VerifyAll) self.addCleanup(self.mox.UnsetStubs)
def test_get_token(self): auth_session, auth_plugin = setup_keystone_v2(self.requests) self.client = client.construct_http_client(username=USERNAME, tenant_name=TENANT_NAME, password=PASSWORD, auth_url=AUTH_URL, region_name=REGION, session=auth_session, auth=auth_plugin) m = self.requests.get(PUBLIC_ENDPOINT_URL + '/resource', request_headers={'X-Auth-Token': TOKENID}) self.client.do_request('/resource', 'GET') self.assertTrue(m.called)
def setUp(self): """Prepare the test environment.""" super(CLITestAuthKeystone, self).setUp() for var in ('http_proxy', 'HTTP_PROXY'): self.useFixture(fixtures.EnvironmentVariableFixture(var)) self.logger = self.useFixture(fixtures.FakeLogger(level=logging.DEBUG)) self.requests = self.useFixture(mock_fixture.Fixture()) self.client = client.construct_http_client(username=USERNAME, tenant_name=TENANT_NAME, password=PASSWORD, auth_url=AUTH_URL, region_name=REGION)
def setUp(self): """Prepare the test environment.""" super(CLITestAuthKeystone, self).setUp() for var in ('http_proxy', 'HTTP_PROXY'): self.useFixture(fixtures.EnvironmentVariableFixture(var)) self.logger = self.useFixture(fixtures.FakeLogger(level=logging.DEBUG)) self.requests = self.useFixture(mock_fixture.Fixture()) self.client = client.construct_http_client( username=USERNAME, tenant_name=TENANT_NAME, password=PASSWORD, auth_url=AUTH_URL, region_name=REGION)
def setup_loadbalancer_client(): neutron_client = get_neutron_client() if any(ext['alias'] == 'lbaasv2' for ext in neutron_client.list_extensions()['extensions']): _clients[_LB_CLIENT] = neutron_client else: # Since Octavia is lbaasv2 API compatible (A superset of it) we'll just # wire an extra neutron client instance to point to it lbaas_client = utils.get_neutron_client() conf_group = utils.kuryr_config.neutron_group.name auth_plugin = utils.get_auth_plugin(conf_group) octo_httpclient = n_client.construct_http_client( session=utils.get_keystone_session(conf_group, auth_plugin), service_type='load-balancer') lbaas_client.httpclient = octo_httpclient _clients[_LB_CLIENT] = lbaas_client
def test_get_token(self): auth_session, auth_plugin = setup_keystone_v2(self.requests) self.client = client.construct_http_client( username=USERNAME, tenant_name=TENANT_NAME, password=PASSWORD, auth_url=AUTH_URL, region_name=REGION, session=auth_session, auth=auth_plugin) m = self.requests.get(PUBLIC_ENDPOINT_URL + '/resource', request_headers={'X-Auth-Token': TOKENID}) self.client.do_request('/resource', 'GET') self.assertTrue(m.called)
def test_v3_auth(self): auth_session, auth_plugin = setup_keystone_v3(self.requests) self.client = client.construct_http_client(user_id=USER_ID, tenant_id=TENANT_ID, password=PASSWORD, auth_url=V3_URL, region_name=REGION, session=auth_session, auth=auth_plugin) m = self.requests.get(PUBLIC_ENDPOINT_URL + '/resource') self.client.do_request('/resource', 'GET') self.assertTrue(m.called)
def setUp(self): """Prepare the test environment.""" super(CLITestAuthKeystone, self).setUp() self.mox = mox.Mox() for var in ('http_proxy', 'HTTP_PROXY'): self.useFixture(fixtures.EnvironmentVariableFixture(var)) self.client = client.construct_http_client(username=USERNAME, tenant_name=TENANT_NAME, password=PASSWORD, auth_url=AUTH_URL, region_name=REGION) self.addCleanup(self.mox.VerifyAll) self.addCleanup(self.mox.UnsetStubs)
def test_v3_auth(self): auth_session, auth_plugin = setup_keystone_v3(self.requests) self.client = client.construct_http_client( user_id=USER_ID, tenant_id=TENANT_ID, password=PASSWORD, auth_url=V3_URL, region_name=REGION, session=auth_session, auth=auth_plugin) m = self.requests.get(PUBLIC_ENDPOINT_URL + '/resource') self.client.do_request('/resource', 'GET') self.assertTrue(m.called)
def test_v3_auth(self, mrequests): auth_session, auth_plugin = setup_keystone_v3(mrequests) res200 = get_response(200) self.client = client.construct_http_client(user_id=USER_ID, tenant_id=TENANT_ID, password=PASSWORD, auth_url=V3_URL, region_name=REGION, session=auth_session, auth=auth_plugin) self.mox.StubOutWithMock(self.client, "request") self.client.request('/resource', 'GET', authenticated=True).AndReturn( (res200, '')) self.mox.ReplayAll() self.client.do_request('/resource', 'GET')
def test_v3_auth(self, mrequests): auth_session, auth_plugin = setup_keystone_v3(mrequests) res200 = get_response(200) self.client = client.construct_http_client( user_id=USER_ID, tenant_id=TENANT_ID, password=PASSWORD, auth_url=V3_URL, region_name=REGION, session=auth_session, auth=auth_plugin, ) self.mox.StubOutWithMock(self.client, "request") self.client.request("/resource", "GET", authenticated=True).AndReturn((res200, "")) self.mox.ReplayAll() self.client.do_request("/resource", "GET")
def initialize(self): if not self._url: httpclient = client.construct_http_client( username=self._username, user_id=self._user_id, tenant_name=self._tenant_name, tenant_id=self._tenant_id, password=self._password, region_name=self._region_name, auth_url=self._auth_url, service_type=self._service_type, endpoint_type=self._endpoint_type, insecure=self._insecure, ca_cert=self._ca_cert, timeout=self._timeout, session=self._session, auth=self._auth, log_credentials=self._log_credentials) httpclient.authenticate() # Populate other password flow attributes self._token = httpclient.auth_token self._url = httpclient.endpoint_url
def test_v2_auth(self, mrequests): auth_session, auth_plugin = setup_keystone_v2(mrequests) res200 = get_response(200) self.client = client.construct_http_client( username=USERNAME, tenant_name=TENANT_NAME, password=PASSWORD, auth_url=AUTH_URL, region_name=REGION, session=auth_session, auth=auth_plugin) self.mox.StubOutWithMock(self.client, "request") self.client.request( '/resource', 'GET', authenticated=True ).AndReturn((res200, '')) self.mox.ReplayAll() self.client.do_request('/resource', 'GET')
def initialize(self): if not self._url: httpclient = client.construct_http_client( username=self._username, user_id=self._user_id, tenant_name=self._tenant_name, tenant_id=self._tenant_id, password=self._password, region_name=self._region_name, auth_url=self._auth_url, service_type=self._service_type, endpoint_type=self._endpoint_type, insecure=self._insecure, ca_cert=self._ca_cert, timeout=self._timeout, session=self._session, auth=self._auth, log_credentials=self._log_credentials) httpclient.authenticate() # Populate other password flow attributes self._token = httpclient.auth_token self._url = httpclient.endpoint_url
def test_get_token(self): auth_session, auth_plugin = setup_keystone_v2() self.client = client.construct_http_client( username=USERNAME, tenant_name=TENANT_NAME, password=PASSWORD, auth_url=AUTH_URL, region_name=REGION, session=auth_session, auth=auth_plugin) self.mox.StubOutWithMock(self.client, "request") res200 = get_response(200) self.client.request( '/resource', 'GET', authenticated=True ).AndReturn((res200, '')) self.mox.ReplayAll() self.client.do_request('/resource', 'GET')