Files
wlan-testing/tools/config_test_load.py
2022-05-15 10:29:36 +05:30

176 lines
6.2 KiB
Python

import datetime
import os
import sys
import time
""" Environment Paths """
if "libs" not in sys.path:
sys.path.append(f'../libs')
for folder in 'py-json', 'py-scripts':
if folder not in sys.path:
sys.path.append(f'../lanforge/lanforge-scripts/{folder}')
sys.path.append(
os.path.dirname(
os.path.realpath(__file__)
)
)
from controller.controller_2x.controller import Controller
from controller.controller_2x.controller import UProfileUtility
controller = {
'url': 'https://sec-qa01.cicd.lab.wlan.tip.build:16001', # API base url for the controller
'username': "tip@ucentral.com",
'password': 'OpenWifi%123',
}
SERIAL_NUMBERS = [
"0006aee53b84",
"001122090801",
"706dec0a8a79",
"68215fda456d",
"0000c1018812",
"903cb39d6918",
"903cb36ae223",
"089b4bb2f10c",
"f40b9fe78e03"
]
RADIUS_SERVER_DATA = {
"ip": "10.10.1.221",
"port": 1812,
"secret": "testing123",
"user": "user",
"password": "password",
"pk_password": "whatever"
}
RADIUS_ACCOUNTING_DATA= {
"ip": "10.10.1.221",
"port": 1813,
"secret": "testing123",
"user": "user",
"password": "password",
"pk_password": "whatever"
}
setup_params = [
{
"mode": "BRIDGE",
"ssids": [
{"ssid_name": "ssid_psk_2g", "appliedRadios": ["2G"], "security_key": "something", "security": "psk"},
{"ssid_name": "ssid_psk_5g", "appliedRadios": ["5G"], "security_key": "something", "security": "psk"}],
"radius": False
},
{
"mode": "BRIDGE",
"ssids": [
{"ssid_name": "ssid_psk2_2g", "appliedRadios": ["2G"], "security_key": "something", "security": "psk2"},
{"ssid_name": "ssid_psk2_5g", "appliedRadios": ["5G"], "security_key": "something", "security": "psk2"}],
"radius": False
},
{
"mode": "BRIDGE",
"ssids": [
{"ssid_name": "ssid_sae_2g", "appliedRadios": ["2G"], "security_key": "something", "security": "sae"},
{"ssid_name": "ssid_sae_5g", "appliedRadios": ["5G"], "security_key": "something", "security": "sae"}],
"radius": False
},
{
"mode": "BRIDGE",
"ssids": [
{"ssid_name": "ssid_open_2g", "appliedRadios": ["2G"], "security_key": "something", "security": "none"},
{"ssid_name": "ssid_open_5g", "appliedRadios": ["5G"], "security_key": "something", "security": "none"}],
"radius": False
},
{
"mode": "BRIDGE",
"ssids": [
{"ssid_name": "ssid_wpa2_eap_2g", "appliedRadios": ["2G"], "security_key": "something", "security": "wpa2"},
{"ssid_name": "ssid_wpa2_eap_5g", "appliedRadios": ["5G"], "security_key": "something", "security": "wpa2"}],
"radius": True
},
{
"mode": "BRIDGE",
"ssids": [
{"ssid_name": "ssid_wpa3_eap_2g", "appliedRadios": ["2G"], "security_key": "something", "security": "wpa3"},
{"ssid_name": "ssid_wpa3_eap_5g", "appliedRadios": ["5G"], "security_key": "something", "security": "wpa3"}],
"radius": True
},
{
"mode": "NAT",
"ssids": [
{"ssid_name": "ssid_psk_2g", "appliedRadios": ["2G"], "security_key": "something", "security": "psk"},
{"ssid_name": "ssid_psk_5g", "appliedRadios": ["5G"], "security_key": "something", "security": "psk"}],
"radius": False
},
{
"mode": "NAT",
"ssids": [
{"ssid_name": "ssid_psk2_2g", "appliedRadios": ["2G"], "security_key": "something", "security": "psk2"},
{"ssid_name": "ssid_psk2_5g", "appliedRadios": ["5G"], "security_key": "something", "security": "psk2"}],
"radius": False
},
{
"mode": "NAT",
"ssids": [
{"ssid_name": "ssid_sae_2g", "appliedRadios": ["2G"], "security_key": "something", "security": "sae"},
{"ssid_name": "ssid_sae_5g", "appliedRadios": ["5G"], "security_key": "something", "security": "sae"}],
"radius": False
},
{
"mode": "NAT",
"ssids": [
{"ssid_name": "ssid_open_2g", "appliedRadios": ["2G"], "security_key": "something", "security": "none"},
{"ssid_name": "ssid_open_5g", "appliedRadios": ["5G"], "security_key": "something", "security": "none"}],
"radius": False
},
{
"mode": "NAT",
"ssids": [
{"ssid_name": "ssid_wpa2_eap_2g", "appliedRadios": ["2G"], "security_key": "something", "security": "wpa2"},
{"ssid_name": "ssid_wpa2_eap_5g", "appliedRadios": ["5G"], "security_key": "something",
"security": "wpa2"}],
"radius": True
},
{
"mode": "NAT",
"ssids": [
{"ssid_name": "ssid_wpa3_eap_2g", "appliedRadios": ["2G"], "security_key": "something", "security": "wpa3"},
{"ssid_name": "ssid_wpa3_eap_5g", "appliedRadios": ["5G"], "security_key": "something",
"security": "wpa3"}],
"radius": True
},
]
if __name__ == '__main__':
while True:
for config in setup_params:
obj = Controller(controller_data=controller)
up = UProfileUtility(sdk_client=obj, controller_data=controller)
up.set_mode(config["mode"])
up.set_radio_config()
radius = config["radius"]
for ssid in config["ssids"]:
if radius:
up.add_ssid(ssid_data=ssid, radius=radius, radius_auth_data=RADIUS_SERVER_DATA, radius_accounting_data=RADIUS_ACCOUNTING_DATA)
else:
up.add_ssid(ssid_data=ssid)
for serial in SERIAL_NUMBERS:
status = up.push_config(serial_number=serial)
if status.status_code != 200:
sys.exit("Configure Command failed at " + str(datetime.datetime.utcnow()))
if status.status_code == 200:
print("Configure command success: ", serial, " Time: " + str(datetime.datetime.utcnow()))
print("Sleeping 20 Sec before Next Config")
time.sleep(30)
obj.logout()