Esempio n. 1
0
def ztp_module_hooks(request):
    st.add_prevent("ztp")
    initialize_variables()
    pre_config_ztp()
    path_list = [
        ztp_params.home_path + ztp_params.config_path,
        ztp_params.home_path + ztp_params.provision_script_path
    ]
    ztp_obj.create_required_folders(ssh_conn_obj, path_list)
    basic_obj.move_file_to_local_path(vars.D1, "/etc/sonic/snmp.yml",
                                      "/etc/sonic/snmp.yml.bkp")
    source_path = "{}{}".format(config_params.local_provision_scripts_folder,
                                config_params.snmp_filename)
    st.upload_file_to_dut(vars.D1, source_path, "/home/admin/snmp.yml")
    basic_obj.copy_file_to_local_path(vars.D1, "/home/admin/snmp.yml",
                                      "/etc/sonic/snmp.yml")
    yield
    ztp_cfg = {
        "admin-mode": True,
        "restart-ztp-interval": 30,
        "feat-console-logging": feat_logging_console
    }
    ztp_obj.config_ztp_backdoor_options(vars.D1, ztp_cfg)
    reset_module_config()
    basic_obj.move_file_to_local_path(vars.D1, "/etc/sonic/snmp.yml.bkp",
                                      "/etc/sonic/snmp.yml")
Esempio n. 2
0
def ztp_module_hooks(request):
    st.add_prevent("ztp")
    initialize_config_params()
    pre_config_ztp()
    initialize_data_variables()
    path_list = [
        ztp_params.home_path + ztp_params.config_path,
        ztp_params.home_path + ztp_params.firmware_path,
        ztp_params.home_path + ztp_params.provision_script_path,
        ztp_params.home_path + ztp_params.xml_path
    ]
    ztp_obj.create_required_folders(ssh_conn_obj, path_list)
    if inband_ssh_conn_obj:
        basic_obj.service_operations(inband_ssh_conn_obj,
                                     data.dhcp_service_name, "stop", "server")
    basic_obj.move_file_to_local_path(vars.D1, "/etc/sonic/snmp.yml",
                                      "/etc/sonic/snmp.yml.bkp")
    source_path = "{}{}".format(config_params.local_provision_scripts_folder,
                                config_params.snmp_filename)
    st.upload_file_to_dut(vars.D1, source_path, "/home/admin/snmp.yml")
    basic_obj.copy_file_to_local_path(vars.D1, "/home/admin/snmp.yml",
                                      "/etc/sonic/snmp.yml")
    yield
    reset_module_config()
    basic_obj.move_file_to_local_path(vars.D1, "/etc/sonic/snmp.yml.bkp",
                                      "/etc/sonic/snmp.yml")
def ztp_module_hooks(request):
    st.add_prevent("ztp")
    initialize_variables()
    pre_config_ztp()
    path_list = [ztp_params.home_path+ztp_params.config_path, ztp_params.home_path+ztp_params.provision_script_path]
    ztp_obj.create_required_folders(ssh_conn_obj, path_list)
    basic_obj.move_file_to_local_path(vars.D1, "/etc/sonic/snmp.yml", "/etc/sonic/snmp.yml.bkp")
    source_path = "{}{}".format(config_params.local_provision_scripts_folder, config_params.snmp_filename)
    st.upload_file_to_dut(vars.D1, source_path, "/home/admin/snmp.yml")
    basic_obj.copy_file_to_local_path(vars.D1, "/home/admin/snmp.yml", "/etc/sonic/snmp.yml")
    if ztp_params.breakout:
        if breakout(vars.D1, ztp_params.breakout, cli_type="klish", skip_error=True):
            intf_details = get_interface_details_by_alt_name(vars.D1, ztp_params.inband_port)
            if isinstance(intf_details, dict):
                inband_port = intf_details["interface"]
            else:
                inband_port = intf_details
            interface_noshutdown(vars.D1, inband_port)
            config_ip_addr_interface(vars.D1, inband_port, ztp_params.dhcp6.client_ip_inband, ztp_params.dhcp6.inband_v6_subnet, family="ipv6")
            # enable_dhcp_on_interface(vars.D1, ztp_params.inband_port)
            if not ping(vars.D1, ztp_params.dhcp6.inband_static_ip, family="ipv6"):
                st.log("Pinging to DHCP server failed from DUT, issue either with DUT or server")
    # config_save(vars.D1)
    yield
    ztp_cfg = {"admin-mode": True, "restart-ztp-interval": 30, "feat-console-logging": feat_logging_console}
    ztp_obj.config_ztp_backdoor_options(vars.D1, ztp_cfg)
    reset_module_config()
    basic_obj.move_file_to_local_path(vars.D1, "/etc/sonic/snmp.yml.bkp", "/etc/sonic/snmp.yml")
Esempio n. 4
0
def ztp_module_hooks(request):
    st.add_prevent("ztp")
    initialize_config_params()
    pre_config_ztp()
    initialize_data_variables()
    path_list = [ztp_params.home_path+ztp_params.config_path, ztp_params.home_path+ztp_params.firmware_path,
                 ztp_params.home_path+ztp_params.provision_script_path, ztp_params.home_path+ztp_params.xml_path]
    ztp_obj.create_required_folders(ssh_conn_obj, path_list)
    basic_obj.move_file_to_local_path(vars.D1, "/etc/sonic/snmp.yml", "/etc/sonic/snmp.yml.bkp")
    source_path = "{}{}".format(config_params.local_provision_scripts_folder, config_params.snmp_filename)
    st.upload_file_to_dut(vars.D1, source_path, "/home/admin/snmp.yml")
    basic_obj.copy_file_to_local_path(vars.D1, "/home/admin/snmp.yml", "/etc/sonic/snmp.yml")
    if ztp_params.breakout:
        if breakout(vars.D1, ztp_params.breakout, cli_type="klish", skip_error=True):
            intf_details = get_interface_details_by_alt_name(vars.D1, ztp_params.inband_port)
            if isinstance(intf_details, dict):
                inband_port = intf_details["interface"]
            else:
                inband_port = intf_details
            interface_noshutdown(vars.D1, inband_port)
            config_ip_addr_interface(vars.D1, inband_port, ztp_params.dhcp.client_ip_inband, ztp_params.dhcp.inband_v4_subnet)
            # enable_dhcp_on_interface(vars.D1, ztp_params.inband_port)
            if not ping(vars.D1, ztp_params.dhcp.inband_static_ip):
                st.log("Pinging to DHCP server failed from DUT, issue either with DUT or server")
    # config_save(vars.D1)

    # write_config_db(vars.D1, interface_data)
    yield
    reset_module_config()
    basic_obj.move_file_to_local_path(vars.D1, "/etc/sonic/snmp.yml.bkp", "/etc/sonic/snmp.yml")
Esempio n. 5
0
def dhcp_server_config():
    '''
    1. Install dhcp package
    2. Update dhcp files - dhcpd6.conf  dhcpd.conf  isc-dhcp-server
    3. Add static routes
    4.Restart dhcp process
    '''
    hdrMsg("Installing and configuring the dhcp server on dut1")
    dut = data.dut1
    copy_files_to_dut(st.get_mgmt_ip(dut))
    #    st.config(dut,'sudo mv /tmp/'+data.dhcp_files[0]+' /etc/default/'+server_filename,skip_error_check=True)
    #    st.config(dut,'sudo mv /tmp/'+data.dhcp_files[1]+' /etc/dhcp/',skip_error_check=True)
    #    st.config(dut,'sudo mv /tmp/'+data.dhcp_files[2]+' /etc/dhcp/',skip_error_check=True)
    basic_api.move_file_to_local_path(dut,
                                      '/tmp/' + data.dhcp_files[0],
                                      '/etc/default/' + server_filename,
                                      sudo=True,
                                      skip_error_check=True)
    basic_api.move_file_to_local_path(dut,
                                      '/tmp/' + data.dhcp_files[1],
                                      '/etc/dhcp/',
                                      sudo=True,
                                      skip_error_check=True)
    basic_api.move_file_to_local_path(dut,
                                      '/tmp/' + data.dhcp_files[2],
                                      '/etc/dhcp/',
                                      sudo=True,
                                      skip_error_check=True)

    for ip in route_list:
        ip_api.create_static_route(dut,
                                   next_hop=dut3_loopback_ip_list[0],
                                   static_ip=ip)

    basic_api.deploy_package(dut, mode='update')
    basic_api.deploy_package(dut,
                             options='-o Dpkg::Options::=\"--force-confold\"',
                             packane_name='isc-dhcp-server',
                             mode='install',
                             skip_verify_package=True)
    #st.config(dut, "systemctl restart isc-dhcp-server")
    st.wait(2)
    ps_aux = basic_api.get_ps_aux(data.dut1, "dhcpd")
    if len(ps_aux) > 1:
        hdrMsg("dhcp server is up and running in dut1")
        return True
    #st.config(dut, "systemctl restart isc-dhcp-server")
    basic_api.service_operations_by_systemctl(dut,
                                              operation='restart',
                                              service='isc-dhcp-server')
    ps_aux = basic_api.get_ps_aux(data.dut1, "dhcpd")
    st.wait(2)
    if len(ps_aux) < 1:
        hdrMsg("dhcp server is not up and running in dut1")
        return False
    return True