python类py()的实例源码

path.py 文件源码 项目:python-don 作者: openstack 项目源码 文件源码 阅读 32 收藏 0 点赞 0 评论 0
def launch_ping(src_ip, dst_ip, username, passwd,
                count, timeout, qrouter, filename):
    cmd = 'sudo ip netns exec ' + str(qrouter)
    cmd += ' python ping.py --src_ip %s --dst_ip %s --username "%s" --passwd "%s" --count %d --timeout %d' % \
        (src_ip, dst_ip, username, passwd, count, timeout)
    cmd += ' > %s 2>&1' % filename

    p = subprocess.Popen(cmd, shell=True)

    return p
_setup.py 文件源码 项目:click-configfile 作者: click-contrib 项目源码 文件源码 阅读 25 收藏 0 点赞 0 评论 0
def need_vendor_bundles(invoke_minversion=None):
    invoke_minversion = invoke_minversion or "0.0.0"
    need_vendor_answers = []
    need_vendor_answers.append(need_vendor_bundle_invoke(invoke_minversion))
    # -- REQUIRE: path.py
    try:
        import path
        need_bundle = False
    except ImportError:
        need_bundle = True
    need_vendor_answers.append(need_bundle)

    # -- DIAG: print("INVOKE: need_bundle=%s" % need_bundle1)
    # return need_bundle1 or need_bundle2
    return any(need_vendor_answers)
_setup.py 文件源码 项目:click-configfile 作者: jenisys 项目源码 文件源码 阅读 28 收藏 0 点赞 0 评论 0
def need_vendor_bundles(invoke_minversion=None):
    invoke_minversion = invoke_minversion or "0.0.0"
    need_vendor_answers = []
    need_vendor_answers.append(need_vendor_bundle_invoke(invoke_minversion))
    # -- REQUIRE: path.py
    try:
        import path
        need_bundle = False
    except ImportError:
        need_bundle = True
    need_vendor_answers.append(need_bundle)

    # -- DIAG: print("INVOKE: need_bundle=%s" % need_bundle1)
    # return need_bundle1 or need_bundle2
    return any(need_vendor_answers)
path.py 文件源码 项目:python-don 作者: openstack 项目源码 文件源码 阅读 31 收藏 0 点赞 0 评论 0
def get_next_hop(src_info, dst_info, qrouter, params):
    next_hop_list = []
    next_hop = None

    username = params['username']
    passwd = params['passwd']
    src_ip = src_info['ip']
    dst_ip = dst_info['ip']

    remote_cmd = ' ip route get %s' % dst_ip

    cmd = 'sudo ip netns exec ' + qrouter
    cmd += ' python run_nms_cmd.py --host_ip %s --username "%s" --passwd "%s" --cmd "%s" ' % \
        (src_ip, username, passwd, remote_cmd)

    output = run_remote_cmd(cmd)
    a = json.loads(output)

    if not a['pass']:
        return []

    json_file = params['json_file']
    info = load_json(json_file)

    next_hop = {}
    for cmd in a['command_list']:
        if re.search('ip route get', cmd['cmd']):
            m = re.search('\S+\s+via\s+(\S+)', cmd['output'][0])
            if m:
                next_hop['ip'] = m.group(1)
                next_hop['dev'] = 'qr-' + ip_to_intf(info, next_hop['ip'])
                next_hop['nms'] = intf_to_namespace(info, next_hop['dev'])
                break

    next_hop_list.append(next_hop)

    cmd = 'sudo ip netns exec ' + next_hop['nms']
    cmd += remote_cmd

    output = run_remote_cmd(cmd).split('\n')

    prev_nms = next_hop['nms']
    next_hop = {}
    m = re.search('\S+\s+dev\s+(\S+)', output[0])
    if m:
        next_hop['dev'] = m.group(1)
        next_hop['nms'] = prev_nms

    next_hop_list.append(next_hop)
    return next_hop_list


问题


面经


文章

微信
公众号

扫码关注公众号