def test_ssl_vs(self): papi = ApiSession('10.10.25.42', 'admin', 'avi123', verify=False, api_version="17.2.1") ssl_vs_cfg = gSAMPLE_CONFIG["SSL-VS"] vs_obj = ssl_vs_cfg["vs_obj"] pool_name = gSAMPLE_CONFIG["SSL-VS"]["pool_obj"]["name"] resp = papi.post('pool', data=gSAMPLE_CONFIG["SSL-VS"]["pool_obj"]) assert resp.status_code == 201 pool_ref = papi.get_obj_ref(resp.json()) cert, key, _, _ = get_sample_ssl_params(folder_path='../samples/') api_utils = ApiUtils(papi) try: resp = api_utils.import_ssl_certificate("ssl-vs-kc", key, cert) print resp.text ssl_kc = resp.json() except: ssl_kc = api.get_object_by_name('sslkeyandcertificate', 'ssl-vs-kc') ssl_key_and_cert_ref = [papi.get_obj_ref(ssl_kc)] vs_obj["pool_ref"] = pool_ref vs_obj["ssl_key_and_certificate_refs"] = ssl_key_and_cert_ref resp = papi.post('virtualservice', data=json.dumps(vs_obj)) print resp, resp.text assert resp.status_code < 300 resp = papi.delete_by_name('virtualservice', vs_obj['name']) assert resp.status_code in (200, 204) resp = papi.delete_by_name("pool", pool_name) assert resp.status_code in (200, 204) resp = api.delete_by_name('sslkeyandcertificate', 'ssl-vs-kc') assert resp.status_code in (200, 204)
def test_ssl_vs(self): papi = ApiSession(api.avi_credentials.controller, api.avi_credentials.username, api.avi_credentials.password, api_version=api.avi_credentials.api_version, verify=False, data_log=True) ssl_vs_cfg = gSAMPLE_CONFIG["SSL-VS"] vs_obj = ssl_vs_cfg["vs_obj"] pool_name = gSAMPLE_CONFIG["SSL-VS"]["pool_obj"]["name"] resp = papi.post('pool', data=gSAMPLE_CONFIG["SSL-VS"]["pool_obj"]) assert resp.status_code == 201 pool_ref = papi.get_obj_ref(resp.json()) cert, key, _, _ = get_sample_ssl_params \ (folder_path=os.path.abspath( os.path.join(os.path.dirname(__file__), '..', 'samples')) + os.sep) api_utils = ApiUtils(papi) try: resp = api_utils.import_ssl_certificate("ssl-vs-kc", key, cert) ssl_kc = resp.json() except: ssl_kc = api.get_object_by_name('sslkeyandcertificate', 'ssl-vs-kc') ssl_key_and_cert_ref = [papi.get_obj_ref(ssl_kc)] vs_obj["pool_ref"] = pool_ref vs_obj["ssl_key_and_certificate_refs"] = ssl_key_and_cert_ref resp = papi.post('virtualservice', data=json.dumps(vs_obj)) assert resp.status_code < 300 resp = papi.delete_by_name('virtualservice', vs_obj['name']) assert resp.status_code in (200, 204) resp = papi.delete_by_name("pool", pool_name) assert resp.status_code in (200, 204) resp = api.delete_by_name('sslkeyandcertificate', 'ssl-vs-kc') assert resp.status_code in (200, 204)
def test_ssl_vs(self): papi = ApiSession(api.controller_ip, api.username, api.password, verify=False) ssl_vs_cfg = gSAMPLE_CONFIG["SSL-VS"] vs_obj = ssl_vs_cfg["vs_obj"] pool_name = gSAMPLE_CONFIG["SSL-VS"]["pool_obj"]["name"] resp = papi.post('pool', data=json.dumps(ssl_vs_cfg["pool_obj"])) pool_ref = papi.get_obj_ref(resp.json()) cert, key, _, _ = get_sample_ssl_params(folder_path='../samples/') api_utils = ApiUtils(papi) try: resp = api_utils.import_ssl_certificate("ssl-vs-kc", key, cert) ssl_kc = resp.json() except: ssl_kc = api.get_object_by_name('sslkeyandcertificate', 'ssl-vs-kc') ssl_key_and_cert_ref = [papi.get_obj_ref(ssl_kc)] vs_obj["pool_ref"] = pool_ref vs_obj["ssl_key_and_certificate_refs"] = ssl_key_and_cert_ref resp = papi.post('virtualservice', data=json.dumps(vs_obj)) assert resp.status_code < 300 resp = papi.delete_by_name('virtualservice', vs_obj['name']) assert resp.status_code in (200, 204) resp = papi.delete_by_name("pool", pool_name) assert resp.status_code in (200, 204) resp = api.delete_by_name('sslkeyandcertificate', 'ssl-vs-kc') assert resp.status_code in (200, 204)
def test_multiple_tenants(self): """ Tests api with multiple tenants to make sure object is only returned for the right tenant. """ tobj = {'name': 'test-tenant'} resp = api.post('tenant', data=tobj) assert resp.status_code in (200, 201) tapi = ApiSession(api.controller_ip, api.username, api.password, tenant=tobj['name'], verify=False) t_obj = tapi.get_object_by_name('tenant', tobj['name']) # created pool. log.info('tenant %s', t_obj) basic_vs_cfg = gSAMPLE_CONFIG["BasicVS"] pool_cfg = copy.deepcopy(basic_vs_cfg["pool_obj"]) pool_cfg['name'] = pool_cfg['name'] + '-test-tenant' resp = tapi.post('pool', data=pool_cfg) assert resp.status_code in (200, 201) # check pool was not created in tenant admin pname = pool_cfg['name'] resp = api.get_object_by_name('pool', pname) assert resp is None resp = tapi.get_object_by_name('pool', pname) assert resp resp = api.get_object_by_name('pool', pname, tenant_uuid=t_obj['uuid']) assert resp resp = api.get_object_by_name('pool', pname, tenant='test-tenant') assert resp resp = tapi.delete_by_name("pool", pname) assert resp.status_code in (200, 204) resp = api.get_object_by_name('pool', pname, tenant='test-tenant') assert resp is None resp = tapi.delete_by_name('tenant', 'test-tenant', tenant='admin') assert resp.status_code in (200, 204)
def test_retry_unauth_api(self): papi = ApiSession(controller_ip=api.avi_credentials.controller, username=api.avi_credentials.username, password=api.avi_credentials.password, verify=False, api_version=api.avi_credentials.api_version, data_log=api.data_log) papi.keystone_token = 'invalid' resp = papi.post('tenant', data={'name': 'tenant1', 'local': 'true'}) assert resp.status_code == 201 papi.delete_by_name('tenant', 'tenant1')
def test_basic_auth(self): basic_vs_cfg = gSAMPLE_CONFIG["BasicVS"] vs_obj = basic_vs_cfg["vs_obj"] headers = { 'X-Avi-Version': login_info.get("api_version", gapi_version), 'Authorization': 'Basic YWRtaW46YXZpMTIzJCU=' } aviapi = ApiSession(controller_ip=login_info.get('controller_ip'), username=login_info.get('username'), api_version=login_info.get("api_version", gapi_version), user_hdrs=headers) resp = aviapi.post('pool', data=json.dumps(basic_vs_cfg["pool_obj"]), api_version=login_info.get("api_version")) assert resp.status_code in (200, 201) resp = aviapi.post('vsvip', data=json.dumps(basic_vs_cfg["vsvip_obj"]), api_version=login_info.get("api_version")) assert resp.status_code in (200, 201) vs_obj["vsvip_ref"] = api.get_obj_ref(resp.json()) resp = aviapi.post('virtualservice', data=json.dumps(vs_obj), api_version=login_info.get("api_version")) print(resp.json) assert resp.status_code in (200, 201) pool_name = gSAMPLE_CONFIG["BasicVS"]["pool_obj"]["name"] vsvip_name = gSAMPLE_CONFIG["BasicVS"]["vsvip_obj"]["name"] resp = aviapi.get('virtualservice', tenant='admin', api_version=login_info.get("api_version")) assert resp.json()['count'] >= 1 assert resp.status_code in (200, 204) resp = aviapi.delete_by_name('virtualservice', vs_obj['name'], api_version=login_info.get("api_version")) assert resp.status_code in (200, 204) resp = aviapi.delete_by_name("pool", pool_name, api_version=login_info.get("api_version")) assert resp.status_code in (200, 204) resp = aviapi.delete_by_name("vsvip", vsvip_name, api_version=login_info.get("api_version")) assert resp.status_code in (200, 204)
def test_multiple_tenants(self): """ Tests api with multiple tenants to make sure object is only returned for the right tenant. """ tobj = {'name': 'test-tenant'} resp = api.post('tenant', data=tobj) assert resp.status_code in (200, 201) tapi = ApiSession(controller_ip=api.avi_credentials.controller, username=api.avi_credentials.username, password=api.avi_credentials.password, tenant=tobj['name'], verify=False, data_log=api.data_log) t_obj = tapi.get_object_by_name('tenant', tobj['name']) # created pool. log.info('tenant %s', t_obj) basic_vs_cfg = gSAMPLE_CONFIG["BasicVS"] pool_cfg = copy.deepcopy(basic_vs_cfg["pool_obj"]) pool_cfg['name'] = pool_cfg['name'] + '-test-tenant' resp = tapi.post('pool', data=pool_cfg) assert resp.status_code in (200, 201) # check pool was not created in tenant admin pname = pool_cfg['name'] resp = api.get_object_by_name('pool', pname) assert resp is None resp = tapi.get_object_by_name('pool', pname) assert resp resp = api.get_object_by_name('pool', pname, tenant_uuid=t_obj['uuid']) assert resp resp = api.get_object_by_name('pool', pname, tenant='test-tenant') assert resp resp = tapi.delete_by_name("pool", pname) assert resp.status_code in (200, 204) resp = api.get_object_by_name('pool', pname, tenant='test-tenant') assert resp is None resp = tapi.delete_by_name('tenant', 'test-tenant', tenant='admin') assert resp.status_code in (200, 204)
def test_session_reset(self): papi = ApiSession(api.controller_ip, api.username, api.password, verify=False, api_version=api.api_version) res = papi.get('pool', params={'fields': 'name'}) assert res.status_code == 200 papi.reset_session() res = papi.get('pool', params={'fields': 'name'}) assert res.status_code == 200 data = {'name': 'test-reset'} res = papi.post('pool', data=data) assert res.status_code == 201 papi.reset_session() res = papi.delete_by_name('pool', 'test-reset') assert res.status_code == 204
def test_session_reset(self): papi = ApiSession(controller_ip=api.avi_credentials.controller, username=api.avi_credentials.username, password=api.avi_credentials.password, verify=False, api_version=api.avi_credentials.api_version, data_log=api.data_log) res = papi.get('pool', params={'fields': 'name'}) assert res.status_code == 200 papi.reset_session() res = papi.get('pool', params={'fields': 'name'}) assert res.status_code == 200 data = {'name': 'test-reset'} res = papi.post('pool', data=data) assert res.status_code == 201 papi.reset_session() res = papi.delete_by_name('pool', 'test-reset') assert res.status_code == 204