def test_cni_labels(): def check_labels(labels, idx): k = labels[idx]["key"] v = labels[idx]["value"] assert k in EXPECTED_NETWORK_LABELS.keys( ), "Got unexpected network key {}".format(k) assert v == EXPECTED_NETWORK_LABELS[k], "Value {obs} isn't correct, should be " \ "{exp}".format(obs=v, exp=EXPECTED_NETWORK_LABELS[k]) r = sdk_api.get(config.SERVICE_NAME, "v1/pod/hello-overlay-vip-0/info").json() assert len( r) == 1, "Got multiple responses from v1/pod/hello-overlay-vip-0/info" try: cni_labels = r[0]["info"]["executor"]["container"]["networkInfos"][0][ "labels"]["labels"] except KeyError: assert False, "CNI labels not present" assert len(cni_labels) == 2, "Got {} labels, should be 2".format( len(cni_labels)) for i in range(2): try: check_labels(cni_labels, i) except KeyError: assert False, "Couldn't get CNI labels from {}".format(cni_labels)
def check_task_ports(task_name, expected_port_count, expected_port_names): endpoint = "/v1/tasks/info/{}".format(task_name) try: r = sdk_api.get(config.SERVICE_NAME, endpoint).json() except DCOSHTTPException: return False, "Failed to get API endpoint {}".format(endpoint) sdk_networks.check_port_names(r, expected_port_count, expected_port_names)
def check_task_ports(task_name, expected_port_count, expected_port_names): endpoint = "/v1/tasks/info/{}".format(task_name) try: r = api.get(PACKAGE_NAME, endpoint).json() except DCOSHTTPException: return False, "Failed to get API endpoint {}".format(endpoint) networks.check_port_names(r, expected_port_count, expected_port_names)
def fault_domain_vars_are_present(pod_instance): info = sdk_api.get( config.SERVICE_NAME, '/v1/pod/{}/info'.format(pod_instance)).json()[0]['info'] variables = info['command']['environment']['variables'] region = next((var for var in variables if var['name'] == 'REGION'), ['NO_REGION']) zone = next((var for var in variables if var['name'] == 'ZONE'), ['NO_ZONE']) return region != 'NO_REGION' and zone != 'NO_ZONE' and len( region) > 0 and len(zone) > 0
def test_cni_labels(): def check_labels(labels, idx): k = labels[idx]["key"] v = labels[idx]["value"] assert k in EXPECTED_NETWORK_LABELS.keys(), "Got unexpected network key {}".format(k) assert v == EXPECTED_NETWORK_LABELS[k], "Value {obs} isn't correct, should be " \ "{exp}".format(obs=v, exp=EXPECTED_NETWORK_LABELS[k]) r = sdk_api.get(config.SERVICE_NAME, "v1/pod/hello-overlay-vip-0/info").json() assert len(r) == 1, "Got multiple responses from v1/pod/hello-overlay-vip-0/info" try: cni_labels = r[0]["info"]["executor"]["container"]["networkInfos"][0]["labels"]["labels"] except KeyError: assert False, "CNI labels not present" assert len(cni_labels) == 2, "Got {} labels, should be 2".format(len(cni_labels)) for i in range(2): try: check_labels(cni_labels, i) except KeyError: assert False, "Couldn't get CNI labels from {}".format(cni_labels)
def fn(): return api.get(service_name, '/v1/plan')
def fn(): return sdk_api.get(service_name, "/v1/plans/{}".format(plan))
def fn(): output = sdk_api.get(service_name, '/v1/plans/{}'.format(plan)) try: return output.json() except: return False
def wait_for_plan(): output = sdk_api.get(service_name, '/v1/plans/{}'.format(plan)) return output.json()
def wait_for_plans(): output = sdk_api.get(service_name, '/v1/plans') return output.json()
def fn(): output = sdk_api.get(service_name, '/v1/metrics') output.raise_for_status() return output.json()
def fn(): output = sdk_api.get(service_name, '/v1/plans') try: return output.json() except: return False