def create_gluster_vol(params): vol_name = params.get("gluster_volume_name") force = params.get('force_recreate_gluster') == "yes" brick_path = params.get("gluster_brick") if not os.path.isabs(brick_path): # do nothing when path is absolute base_dir = params.get("images_base_dir", data_dir.get_data_dir()) brick_path = os.path.join(base_dir, brick_path) error_context.context("Host name lookup failed") hostname = socket.gethostname() if not hostname or hostname == "(none)": if_up = utils_net.get_net_if(state="UP") for i in if_up: ipv4_value = utils_net.get_net_if_addrs(i)["ipv4"] logging.debug("ipv4_value is %s", ipv4_value) if ipv4_value != []: ip_addr = ipv4_value[0] break hostname = ip_addr # Start the gluster dameon, if not started glusterd_start() # Check for the volume is already present, if not create one. if not is_gluster_vol_avail(vol_name) or force: return gluster_vol_create(vol_name, hostname, brick_path, force) else: return True
def create_gluster_uri(params, stripped=False): """ Find/create gluster volume """ vol_name = params.get("gluster_volume_name") error_context.context("Host name lookup failed") hostname = socket.gethostname() gluster_server = params.get("gluster_server") gluster_port = params.get("gluster_port", "0") if not gluster_server: gluster_server = hostname if not gluster_server or gluster_server == "(none)": if_up = utils_net.get_net_if(state="UP") ip_addr = utils_net.get_net_if_addrs(if_up[0])["ipv4"][0] gluster_server = ip_addr # Start the gluster dameon, if not started # Building gluster uri gluster_uri = None if stripped: gluster_uri = "%s:/%s" % (gluster_server, vol_name) else: gluster_uri = "gluster://%s:%s/%s/" % (gluster_server, gluster_port, vol_name) return gluster_uri
def create_gluster_vol(params): vol_name = params.get("gluster_volume_name") force = params.get('force_recreate_gluster') == "yes" brick_path = params.get("gluster_brick") if not os.path.isabs(brick_path): # do nothing when path is absolute base_dir = params.get("images_base_dir", data_dir.get_data_dir()) brick_path = os.path.join(base_dir, brick_path) error_context.context("Host name lookup failed") hostname = socket.gethostname() if not hostname or hostname == "(none)": if_up = utils_net.get_net_if(state="UP") for i in if_up: ipv4_value = utils_net.get_net_if_addrs(i)["ipv4"] LOG.debug("ipv4_value is %s", ipv4_value) if ipv4_value != []: ip_addr = ipv4_value[0] break hostname = ip_addr # Start the gluster daemon, if not started glusterd_start() # Check for the volume is already present, if not create one. if not is_gluster_vol_avail(vol_name) or force: return gluster_vol_create(vol_name, hostname, brick_path, force) else: return True
def get_ping_dest(vm_session, mac_addr="", restart_network=False): """ Get an ip address to ping :param vm_session: The session object to the guest :param mac_addr: mac address of given interface :param restart_network: Whether to restart guest's network :return: ip address """ if restart_network: if not utils_package.package_install('dhcp-client', session=vm_session): raise exceptions.TestFail( "Failed to install dhcp-client on guest.") utils_net.restart_guest_network(vm_session) vm_iface = utils_net.get_linux_ifname(vm_session, mac_addr) if isinstance(vm_iface, list): iface_name = vm_iface[0] else: iface_name = vm_iface utils_misc.wait_for( lambda: utils_net.get_net_if_addrs(iface_name, vm_session.cmd_output). get('ipv4'), 20) cmd = ("ip route |awk -F '/' '/^[0-9]/, /dev %s/ {print $1}'" % iface_name) status, output = utils_misc.cmd_status_output(cmd, shell=True, session=vm_session) if status or not output: raise exceptions.TestError("Failed to run cmd - {}, status - {}, " "output - {}.".format(cmd, status, output)) return re.sub('\d+$', '1', output.strip().splitlines()[-1])
def get_host_ipv4_addr(): """ Get host ipv4 addr """ if_up = utils_net.get_net_if(state="UP") for i in if_up: ipv4_value = utils_net.get_net_if_addrs(i)["ipv4"] logging.debug("ipv4_value is %s", ipv4_value) if ipv4_value != []: ip_addr = ipv4_value[0] break if ip_addr is not None: logging.info("ipv4 address is %s", ip_addr) else: raise error.TestFail("Fail to get ip address") return ip_addr