本文整理匯總了Python中fuelweb_test.models.nailgun_client.NailgunClient.verify_networks方法的典型用法代碼示例。如果您正苦於以下問題:Python NailgunClient.verify_networks方法的具體用法?Python NailgunClient.verify_networks怎麽用?Python NailgunClient.verify_networks使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類fuelweb_test.models.nailgun_client.NailgunClient
的用法示例。
在下文中一共展示了NailgunClient.verify_networks方法的6個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: verify_network
# 需要導入模塊: from fuelweb_test.models.nailgun_client import NailgunClient [as 別名]
# 或者: from fuelweb_test.models.nailgun_client.NailgunClient import verify_networks [as 別名]
def verify_network(admin_node_ip, env_name):
client = NailgunClient(admin_node_ip)
cluster_id = client.get_cluster_id(env_name)
env = load_env(env_name)
task = client.verify_networks(cluster_id, client.get_networks(cluster_id)['networks'])
result = task_wait(client, task, 300, 10)
if result['status'] == 'ready':
return "OK"
else:
return result['message']
示例2: FuelWebClient
# 需要導入模塊: from fuelweb_test.models.nailgun_client import NailgunClient [as 別名]
# 或者: from fuelweb_test.models.nailgun_client.NailgunClient import verify_networks [as 別名]
#.........這裏部分代碼省略.........
registered. Otherwise return None.
"""
mac_addresses = map(lambda interface: interface.mac_address.capitalize(), devops_node.interfaces)
for nailgun_node in self.client.list_nodes():
if nailgun_node["mac"].capitalize() in mac_addresses:
nailgun_node["devops_name"] = devops_node.name
return nailgun_node
return None
@logwrap
def get_ssh_for_node(self, node_name):
ip = self.get_nailgun_node_by_devops_node(self.environment.get_virtual_environment().node_by_name(node_name))[
"ip"
]
return self.environment.get_ssh_to_remote(ip)
@logwrap
def get_ssh_for_role(self, nodes_dict, role):
node_name = sorted(filter(lambda name: role in nodes_dict[name], nodes_dict.keys()))[0]
return self.get_ssh_for_node(node_name)
@logwrap
def is_node_discovered(self, nailgun_node):
return any(
map(
lambda node: node["mac"] == nailgun_node["mac"] and node["status"] == "discover",
self.client.list_nodes(),
)
)
@logwrap
def run_network_verify(self, cluster_id):
return self.client.verify_networks(cluster_id, self.client.get_networks(cluster_id)["networks"])
@logwrap
def run_ostf(
self, cluster_id, test_sets=None, should_fail=0, tests_must_be_passed=None, timeout=None, failed_test_name=None
):
test_sets = test_sets or ["smoke", "sanity"]
timeout = timeout or 30 * 60
self.client.ostf_run_tests(cluster_id, test_sets)
if tests_must_be_passed:
self.assert_ostf_run_certain(cluster_id, tests_must_be_passed, timeout)
else:
logger.info("Try to run assert ostf with " "expected fail name {0}".format(failed_test_name))
self.assert_ostf_run(
cluster_id, should_fail=should_fail, timeout=timeout, failed_test_name=failed_test_name
)
@logwrap
def run_single_ostf_test(self, cluster_id, test_sets=None, test_name=None, should_fail=0):
self.client.ostf_run_singe_test(cluster_id, test_sets, test_name)
self.assert_ostf_run(cluster_id, should_fail=should_fail)
@logwrap
def task_wait(self, task, timeout, interval=5):
try:
wait(lambda: self.client.get_task(task["id"])["status"] != "running", interval=interval, timeout=timeout)
except TimeoutError:
raise TimeoutError(
'Waiting task "{task}" timeout {timeout} sec '
"was exceeded: ".format(task=task["name"], timeout=timeout)
)
示例3: FuelWebClient
# 需要導入模塊: from fuelweb_test.models.nailgun_client import NailgunClient [as 別名]
# 或者: from fuelweb_test.models.nailgun_client.NailgunClient import verify_networks [as 別名]
#.........這裏部分代碼省略.........
"""
mac_addresses = map(
lambda interface: interface.mac_address.capitalize(),
devops_node.interfaces
)
for nailgun_node in self.client.list_nodes():
if nailgun_node['mac'].capitalize() in mac_addresses:
nailgun_node['devops_name'] = devops_node.name
return nailgun_node
return None
@logwrap
def get_ssh_for_node(self, node_name):
ip = self.get_nailgun_node_by_devops_node(
self.environment.get_virtual_environment().
node_by_name(node_name))['ip']
return self.environment.get_ssh_to_remote(ip)
@logwrap
def get_ssh_for_role(self, nodes_dict, role):
node_name = sorted(filter(lambda name: role in nodes_dict[name],
nodes_dict.keys()))[0]
return self.get_ssh_for_node(node_name)
@logwrap
def is_node_discovered(self, nailgun_node):
return any(
map(lambda node: node['mac'] == nailgun_node['mac']
and node['status'] == 'discover', self.client.list_nodes()))
@logwrap
def run_network_verify(self, cluster_id):
return self.client.verify_networks(
cluster_id, self.client.get_networks(cluster_id)['networks'])
@logwrap
def run_ostf(self, cluster_id, test_sets=None,
should_fail=0, should_pass=0):
test_sets = test_sets \
if test_sets is not None \
else ['smoke', 'sanity']
self.client.ostf_run_tests(cluster_id, test_sets)
self.assert_ostf_run(
cluster_id,
should_fail=should_fail,
should_pass=should_pass
)
@logwrap
def task_wait(self, task, timeout, interval=5):
try:
wait(
lambda: self.client.get_task(
task['id'])['status'] != 'running',
interval=interval,
timeout=timeout
)
except TimeoutError:
raise TimeoutError(
"Waiting task \"{task}\" timeout {timeout} sec "
"was exceeded: ".format(task=task["name"], timeout=timeout))
return self.client.get_task(task['id'])
示例4: FuelWebClient
# 需要導入模塊: from fuelweb_test.models.nailgun_client import NailgunClient [as 別名]
# 或者: from fuelweb_test.models.nailgun_client.NailgunClient import verify_networks [as 別名]
#.........這裏部分代碼省略.........
registered. Otherwise return None.
"""
devops_macs = {i.mac_address.upper() for i in devops_node.interfaces}
logger.debug('Look for nailgun node by macs %s', devops_macs)
for nailgun_node in self.client.list_nodes():
macs = {i['mac'] for i in nailgun_node['meta']['interfaces']}
if devops_macs == macs:
nailgun_node['devops_name'] = devops_node.name
return nailgun_node
return None
@logwrap
def get_ssh_for_node(self, node_name):
ip = self.get_nailgun_node_by_devops_node(
self.environment.get_virtual_environment().
node_by_name(node_name))['ip']
return self.environment.get_ssh_to_remote(ip)
@logwrap
def get_ssh_for_role(self, nodes_dict, role):
node_name = sorted(filter(lambda name: role in nodes_dict[name],
nodes_dict.keys()))[0]
return self.get_ssh_for_node(node_name)
@logwrap
def is_node_discovered(self, nailgun_node):
return any(
map(lambda node: node['mac'] == nailgun_node['mac']
and node['status'] == 'discover', self.client.list_nodes()))
@logwrap
def run_network_verify(self, cluster_id):
logger.info('Run network verification at cluster %s', cluster_id)
return self.client.verify_networks(
cluster_id, self.client.get_networks(cluster_id)['networks'])
@logwrap
def run_ostf(self, cluster_id, test_sets=None,
should_fail=0, tests_must_be_passed=None,
timeout=None, failed_test_name=None):
test_sets = test_sets or ['smoke', 'sanity']
timeout = timeout or 30 * 60
self.client.ostf_run_tests(cluster_id, test_sets)
if tests_must_be_passed:
self.assert_ostf_run_certain(
cluster_id,
tests_must_be_passed,
timeout)
else:
logger.info('Try to run assert ostf with '
'expected fail name {0}'.format(failed_test_name))
self.assert_ostf_run(
cluster_id,
should_fail=should_fail, timeout=timeout,
failed_test_name=failed_test_name)
@logwrap
def return_ostf_results(self, cluster_id, timeout):
set_result_list = self._ostf_test_wait(cluster_id, timeout)
tests_res = []
for set_result in set_result_list:
[tests_res.append({test['name']:test['status']})
for test in set_result['tests'] if test['status'] != 'disabled']
logger.info('OSTF test statuses are : {0}'.format(tests_res))
return tests_res
示例5: FuelWebClient
# 需要導入模塊: from fuelweb_test.models.nailgun_client import NailgunClient [as 別名]
# 或者: from fuelweb_test.models.nailgun_client.NailgunClient import verify_networks [as 別名]
#.........這裏部分代碼省略.........
if nailgun_node['meta']['system']['fqdn'] == fqdn:
return nailgun_node
nailgun_node = get_nailgun_node(fqdn)
macs = {i['mac'] for i in nailgun_node['meta']['interfaces']}
for devops_node in devops_nodes:
devops_macs = {i.mac_address.upper()
for i in devops_node.interfaces}
if devops_macs == macs:
return devops_node
@logwrap
def get_ssh_for_node(self, node_name):
ip = self.get_nailgun_node_by_devops_node(
self.environment.get_virtual_environment().
node_by_name(node_name))['ip']
return self.environment.get_ssh_to_remote(ip)
@logwrap
def get_ssh_for_role(self, nodes_dict, role):
node_name = sorted(filter(lambda name: role in nodes_dict[name],
nodes_dict.keys()))[0]
return self.get_ssh_for_node(node_name)
@logwrap
def is_node_discovered(self, nailgun_node):
return any(
map(lambda node: node['mac'] == nailgun_node['mac']
and node['status'] == 'discover', self.client.list_nodes()))
@logwrap
def run_network_verify(self, cluster_id):
logger.info('Run network verification at cluster %s', cluster_id)
return self.client.verify_networks(cluster_id)
@logwrap
def run_ostf(self, cluster_id, test_sets=None,
should_fail=0, tests_must_be_passed=None,
timeout=None, failed_test_name=None):
test_sets = test_sets or ['smoke', 'sanity']
timeout = timeout or 30 * 60
self.client.ostf_run_tests(cluster_id, test_sets)
if tests_must_be_passed:
self.assert_ostf_run_certain(
cluster_id,
tests_must_be_passed,
timeout)
else:
logger.info('Try to run assert ostf with '
'expected fail name {0}'.format(failed_test_name))
self.assert_ostf_run(
cluster_id,
should_fail=should_fail, timeout=timeout,
failed_test_name=failed_test_name)
@logwrap
def return_ostf_results(self, cluster_id, timeout):
set_result_list = self._ostf_test_wait(cluster_id, timeout)
tests_res = []
for set_result in set_result_list:
[tests_res.append({test['name']:test['status']})
for test in set_result['tests'] if test['status'] != 'disabled']
logger.info('OSTF test statuses are : {0}'.format(tests_res))
return tests_res
示例6: FuelWebClient
# 需要導入模塊: from fuelweb_test.models.nailgun_client import NailgunClient [as 別名]
# 或者: from fuelweb_test.models.nailgun_client.NailgunClient import verify_networks [as 別名]
#.........這裏部分代碼省略.........
registered. Otherwise return None.
"""
mac_addresses = map(lambda interface: interface.mac_address.capitalize(), devops_node.interfaces)
for nailgun_node in self.client.list_nodes():
if nailgun_node["mac"].capitalize() in mac_addresses:
nailgun_node["devops_name"] = devops_node.name
return nailgun_node
return None
@logwrap
def get_ssh_for_node(self, node_name):
ip = self.get_nailgun_node_by_devops_node(self.environment.get_virtual_environment().node_by_name(node_name))[
"ip"
]
return self.environment.get_ssh_to_remote(ip)
@logwrap
def get_ssh_for_role(self, nodes_dict, role):
node_name = sorted(filter(lambda name: role in nodes_dict[name], nodes_dict.keys()))[0]
return self.get_ssh_for_node(node_name)
@logwrap
def is_node_discovered(self, nailgun_node):
return any(
map(
lambda node: node["mac"] == nailgun_node["mac"] and node["status"] == "discover",
self.client.list_nodes(),
)
)
@logwrap
def run_network_verify(self, cluster_id):
return self.client.verify_networks(cluster_id, self.client.get_networks(cluster_id)["networks"])
@logwrap
def run_ostf(self, cluster_id, test_sets=None, should_fail=0, should_pass=0):
test_sets = test_sets if test_sets is not None else ["smoke", "sanity"]
self.client.ostf_run_tests(cluster_id, test_sets)
self.assert_ostf_run(cluster_id, should_fail=should_fail, should_pass=should_pass)
@logwrap
def task_wait(self, task, timeout, interval=5):
try:
wait(lambda: self.client.get_task(task["id"])["status"] != "running", interval=interval, timeout=timeout)
except TimeoutError:
raise TimeoutError(
'Waiting task "{task}" timeout {timeout} sec '
"was exceeded: ".format(task=task["name"], timeout=timeout)
)
return self.client.get_task(task["id"])
@logwrap
def update_nodes(self, cluster_id, nodes_dict, pending_addition=True, pending_deletion=False):
# update nodes in cluster
nodes_data = []
for node_name in nodes_dict:
devops_node = self.environment.get_virtual_environment().node_by_name(node_name)
node = self.get_nailgun_node_by_devops_node(devops_node)
node_data = {
"cluster_id": cluster_id,
"id": node["id"],
"pending_addition": pending_addition,
"pending_deletion": pending_deletion,