diff --git a/py-scripts/tools/ct_us_001.json b/py-scripts/tools/ct_us_001.json
index 53a361ea..d720a041 100644
--- a/py-scripts/tools/ct_us_001.json
+++ b/py-scripts/tools/ct_us_001.json
@@ -18,6 +18,31 @@
"ftp_test_ip": "10.40.0.10",
"test_ip": "192.168.0.104"
},
+ "test_database":{
+ "database_config": "True",
+ "database_host": "192.168.100.201",
+ "database_port": "8086",
+ "database_token": "-u_Wd-L8o992701QF0c5UmqEp7w7Z7YOMaWLxOMgmHfATJGnQbbmYyNxHBR9PgD6taM_tcxqJl6U8DjU1xINFQ==",
+ "database_org": "Candela",
+ "database_bucket": "lanforge_qa_testing",
+ "database_tag": "testbed CT-US-001",
+ "dut_set_name": "DUT_NAME ASUSRT-AX88U"
+ },
+ "test_dashboard":{
+ "dashboard_config": "True",
+ "dashboard_host": "192.168.100.201",
+ "dashboard_token": "eyJrIjoiS1NGRU8xcTVBQW9lUmlTM2dNRFpqNjFqV05MZkM0dzciLCJuIjoibWF0dGhldyIsImlkIjoxfQ=="
+ },
+ "test_blog":{
+ "blog_config": "True",
+ "blog_host": "192.168.100.153",
+ "blog_token": "60df4b0175953f400cd30650:d50e1fabf9a9b5d3d30fe97bc3bf04971d05496a89e92a169a0d72357c81f742",
+ "blog_authors": "Matthew",
+ "blog_customer": "candela",
+ "blog_user_push": "lanforge",
+ "blog_password_push": "lanforge",
+ "blog_flag": "--kpi_to_ghost"
+ },
"test_generic":{
"radio_used": "wiphy1",
"ssid_used": "asus11ax-5",
@@ -54,7 +79,7 @@
"CT-US-001_dataplane_ATH10K(9984)":{"enabled":"TRUE","load_db":"skip","command":"lf_dataplane_test.py",
"args":"--mgr 192.168.100.116 --port 8080 --lf_user lanforge --lf_password lanforge --instance_name cicd-dpt --config_name test_con --upstream 1.1.eth2 --dut asus_5g --duration 30s --station 1.1.wlan1 --download_speed 85% --upload_speed 0 --raw_line 'pkts: 60;88;120;256;512;1024;MTU' --raw_line 'directions: DUT Transmit' --raw_line 'traffic_types: UDP' --raw_line 'bandw_options: 20' --raw_line 'spatial_streams: 1' --pull_report --local_lf_report_dir REPORT_PATH --influx_host 192.168.100.201 --influx_port 8086 --influx_org Candela --influx_token=-u_Wd-L8o992701QF0c5UmqEp7w7Z7YOMaWLxOMgmHfATJGnQbbmYyNxHBR9PgD6taM_tcxqJl6U8DjU1xINFQ== --influx_bucket lanforge_qa_testing --influx_tag testbed CT-US-001 --set DUT_NAME ASUSRT-AX88U"},
"GHOST":{"enabled":"TRUE","load_db":"skip","command":"ghost_profile.py",
- "args":"--ghost_token 60df4b0175953f400cd30650:d50e1fabf9a9b5d3d30fe97bc3bf04971d05496a89e92a169a0d72357c81f742 --ghost_host 192.168.100.153 --authors Matthew --customer candela --user_push lanforge --password lanforge --kpi_to_ghost --grafana_token eyJrIjoiS1NGRU8xcTVBQW9lUmlTM2dNRFpqNjFqV05MZkM0dzciLCJuIjoibWF0dGhldyIsImlkIjoxfQ== --grafana_host 192.168.100.201 --grafana_bucket lanforge_qa_testing --parent_folder REPORT_PATH --influx_host c7-grafana.candelatech.com --influx_org Candela --influx_token=-u_Wd-L8o992701QF0c5UmqEp7w7Z7YOMaWLxOMgmHfATJGnQbbmYyNxHBR9PgD6taM_tcxqJl6U8DjU1xINFQ== --influx_bucket lanforge_qa_testing --influx_tag testbed CT-US-001 "}
+ "args":"--ghost_token 60df4b0175953f400cd30650:d50e1fabf9a9b5d3d30fe97bc3bf04971d05496a89e92a169a0d72357c81f742 --ghost_host 192.168.100.153 --authors Matthew --customer candela --user_push lanforge --password lanforge --kpi_to_ghost --grafana_token eyJrIjoiS1NGRU8xcTVBQW9lUmlTM2dNRFpqNjFqV05MZkM0dzciLCJuIjoibWF0dGhldyIsImlkIjoxfQ== --grafana_host 192.168.100.201 --grafana_bucket lanforge_qa_testing --parent_folder REPORT_PATH --influx_host 192.168.100.201 --influx_org Candela --influx_token=-u_Wd-L8o992701QF0c5UmqEp7w7Z7YOMaWLxOMgmHfATJGnQbbmYyNxHBR9PgD6taM_tcxqJl6U8DjU1xINFQ== --influx_bucket lanforge_qa_testing --influx_tag testbed CT-US-001 "}
},
"suite_wc_dp":{
"CT-US-001_wifi_capacity_ATH10K(9984)":{"enabled":"TRUE","load_db":"skip","command":"lf_wifi_capacity_test.py","args":"--mgr 192.168.100.116 --port 8080 --lf_user lanforge --lf_password lanforge --instance_name cicd-wct --upstream 1.1.eth2 --batch_size 1,5,25 --loop_iter 1 --protocol UDP-IPv4 --duration 6000 --pull_report --local_lf_report_dir REPORT_PATH --stations 1.1.wlan1 --test_rig CT-US-001 --influx_host 192.168.100.201 --influx_port 8086 --influx_org Candela --influx_token=-u_Wd-L8o992701QF0c5UmqEp7w7Z7YOMaWLxOMgmHfATJGnQbbmYyNxHBR9PgD6taM_tcxqJl6U8DjU1xINFQ== --influx_bucket lanforge_qa_testing --influx_tag testbed CT-US-001 --set DUT_NAME ASUSRT-AX88U"},
diff --git a/py-scripts/tools/lf_check.py b/py-scripts/tools/lf_check.py
index 0a6e69fb..a033ce6a 100755
--- a/py-scripts/tools/lf_check.py
+++ b/py-scripts/tools/lf_check.py
@@ -142,8 +142,8 @@ class lf_check():
# database configuration # database
self.database_json = ""
- self.database_config = False
- self.database_host = "c7-grafana.candelatech.com" # influx and grafana have the same host "192.168.100.201"
+ self.database_config = "True" # default to False once testing done
+ self.database_host = "192.168.100.201" #"c7-grafana.candelatech.com" # influx and grafana have the same host "192.168.100.201"
self.database_port = "8086"
self.database_token = "-u_Wd-L8o992701QF0c5UmqEp7w7Z7YOMaWLxOMgmHfATJGnQbbmYyNxHBR9PgD6taM_tcxqJl6U8DjU1xINFQ=="
self.database_org = "Candela"
@@ -154,7 +154,8 @@ class lf_check():
# grafana configuration #dashboard
self.dashboard_json = ""
- self.dashboard_host = "c7-grafana.candelatech.com" # 192.168.100.201
+ self.dashboard_config = "True" # default to False once testing done
+ self.dashboard_host = "192.168.100.201" #"c7-grafana.candelatech.com" # 192.168.100.201
self.dashboard_token = "eyJrIjoiS1NGRU8xcTVBQW9lUmlTM2dNRFpqNjFqV05MZkM0dzciLCJuIjoibWF0dGhldyIsImlkIjoxfQ=="
# ghost configuration
@@ -189,14 +190,17 @@ class lf_check():
message_txt = """{email_txt} lanforge target {lf_mgr}
Results from {hostname}:
http://{ip}/{report}
+Blog:
+http://{blog}
NOTE: for now to see stdout and stderr remove /home/lanforge from path.
-""".format(hostname=hostname, ip=ip, report=report_url, email_txt=self.email_txt, lf_mgr=self.lf_mgr)
+""".format(hostname=hostname, ip=ip, report=report_url, email_txt=self.email_txt, lf_mgr=self.lf_mgr,blog=self.blog_host)
else:
message_txt = """Results from {hostname}:
http://{ip}/{report}
-NOTE: for now to see stdout and stderr remove /home/lanforge from path.
-""".format(hostname=hostname, ip=ip, report=report_url)
+Blog:
+blog: http://{blog}
+""".format(hostname=hostname, ip=ip, report=report_url,blog=self.blog_host)
if(self.email_title_txt != ""):
mail_subject = "{} [{hostname}] {date}".format(self.email_title_txt,hostname=hostname, date=datetime.datetime.now())
@@ -264,54 +268,6 @@ NOTE: for now to see stdout and stderr remove /home/lanforge from path.
"""
- # inprogress
- def read_influx_json(self):
- # use influx json config file
- if self.influx_json == "":
- self.influx_config = False
- else:
- self.influx_config = True
- try:
- with open(self.influx_json, 'r') as influx_json_config:
- influx_json_data = json.load(influx_json_config)
- except:
- print("Error reading {}".format(self.influx_json))
- # json configuation takes presidence to command line
- # influx DB configuration
- if "influx_host" in influx_json_data:
- self.influx_host = influx_json_data["influx_host"]
- else:
- self.logger.info("WARNING influx_host not in json {}".format(influx_json_data))
- self.influx_config = False
- if "influx_port" in influx_json_data:
- self.influx_port = influx_json_data["influx_port"]
- else:
- self.logger.info("WARNING influx_port not in json {}".format(influx_json_data))
- self.influx_config = False
- if "influx_org" in influx_json_data:
- self.influx_org = influx_json_data["influx_org"]
- else:
- self.logger.info("WARNING influx_org not in json {}".format(influx_json_data))
- self.influx_config = False
- if "influx_token" in influx_json_data:
- self.influx_token = influx_json_data["influx_token"]
- else:
- self.logger.info("WARNING influx_token not in json {}".format(influx_json_data))
- self.influx_config = False
- if "influx_bucket" in influx_json_data:
- self.influx_bucket = influx_json_data["influx_bucket"]
- else:
- self.logger.info("WARNING influx_bucket not in json {}".format(influx_json_data))
- self.influx_config = False
- if "influx_tag" in influx_json_data:
- self.influx_tag = influx_json_data["influx_tag"]
- else:
- self.logger.info("WARNING influx_tag not in json {}".format(influx_json_data))
- self.influx_config = False
-
- #def read_ghost_json(self):
-
-
def read_config(self):
@@ -340,6 +296,27 @@ NOTE: for now to see stdout and stderr remove /home/lanforge from path.
self.logger.info("EXITING test_network not in json {}".format(self.json_data))
exit(1)
+ if "test_database" in self.json_data:
+ self.logger.info("json: read test_database")
+ #self.logger.info("test_database {}".format(self.json_data["test_database"]))
+ self.read_test_database()
+ else:
+ self.logger.info("NOTE: test_database not found in json")
+
+ if "test_dashboard" in self.json_data:
+ self.logger.info("json: read test_dashboard")
+ #self.logger.info("test_dashboard {}".format(self.json_data["test_dashboard"]))
+ self.read_test_dashboard()
+ else:
+ self.logger.info("NOTE: test_dashboard not found in json")
+
+ if "test_blog" in self.json_data:
+ self.logger.info("json: read test_blog")
+ #self.logger.info("test_blog {}".format(self.json_data["test_blog"]))
+ self.read_test_blog()
+ else:
+ self.logger.info("NOTE: test_blog not found in json")
+
if "test_generic" in self.json_data:
self.logger.info("json: read test_generic")
#self.logger.info("test_generic {}".format(self.json_data["test_generic"]))
@@ -448,6 +425,97 @@ NOTE: for now to see stdout and stderr remove /home/lanforge from path.
self.logger.info("test_ip not in test_network json")
exit(1)
+ def read_test_database(self):
+ if "database_config" in self.json_data["test_database"]:
+ self.database_config = self.json_data["test_database"]["database_config"]
+ else:
+ self.logger.info("database_config not in test_database json")
+ if "database_host" in self.json_data["test_database"]:
+ self.database_host = self.json_data["test_database"]["database_host"]
+ else:
+ self.logger.info("database_host not in test_database json")
+ if "database_port" in self.json_data["test_database"]:
+ self.database_port = self.json_data["test_database"]["database_port"]
+ else:
+ self.logger.info("database_port not in test_database json")
+ if "database_token" in self.json_data["test_database"]:
+ self.database_token = self.json_data["test_database"]["database_token"]
+ else:
+ self.logger.info("database_token not in test_database json")
+ if "database_org" in self.json_data["test_database"]:
+ self.database_org = self.json_data["test_database"]["database_org"]
+ else:
+ self.logger.info("database_org not in test_database json")
+ if "database_bucket" in self.json_data["test_database"]:
+ self.database_bucket = self.json_data["test_database"]["database_bucket"]
+ else:
+ self.logger.info("database_bucket not in test_database json")
+ if "database_tag" in self.json_data["test_database"]:
+ self.database_tag = self.json_data["test_database"]["database_tag"]
+ else:
+ self.logger.info("database_tag not in test_database json")
+ if "dut_set_name" in self.json_data["test_database"]:
+ self.dut_set_name = self.json_data["test_database"]["dut_set_name"]
+ else:
+ self.logger.info("dut_set_name not in test_database json")
+
+ def read_test_dashboard(self):
+ if "dashboard_config" in self.json_data["test_dashboard"]:
+ self.dashboard_config = self.json_data["test_dashboard"]["dashboard_config"]
+ else:
+ self.logger.info("dashboard_config not in test_dashboard json")
+
+ if "dashboard_host" in self.json_data["test_dashboard"]:
+ self.dashboard_host = self.json_data["test_dashboard"]["dashboard_host"]
+ else:
+ self.logger.info("dashboard_host not in test_dashboard json")
+
+ if "dashboard_token" in self.json_data["test_dashboard"]:
+ self.dashboard_token = self.json_data["test_dashboard"]["dashboard_token"]
+ else:
+ self.logger.info("dashboard_token not in test_dashboard json")
+
+ def read_test_blog(self):
+ if "blog_config" in self.json_data["test_blog"]:
+ self.blog_config = self.json_data["test_blog"]["blog_config"]
+ else:
+ self.logger.info("blog_config not in test_blog json")
+
+ if "blog_host" in self.json_data["test_blog"]:
+ self.blog_host = self.json_data["test_blog"]["blog_host"]
+ else:
+ self.logger.info("blog_host not in test_blog json")
+
+ if "blog_token" in self.json_data["test_blog"]:
+ self.blog_token = self.json_data["test_blog"]["blog_token"]
+ else:
+ self.logger.info("blog_token not in test_blog json")
+
+ if "blog_authors" in self.json_data["test_blog"]:
+ self.blog_authors = self.json_data["test_blog"]["blog_authors"]
+ else:
+ self.logger.info("blog_authors not in test_blog json")
+
+ if "blog_customer" in self.json_data["test_blog"]:
+ self.blog_customer = self.json_data["test_blog"]["blog_customer"]
+ else:
+ self.logger.info("blog_customer not in test_blog json")
+
+ if "blog_user_push" in self.json_data["test_blog"]:
+ self.blog_user_push = self.json_data["test_blog"]["blog_user_push"]
+ else:
+ self.logger.info("blog_user_push not in test_blog json")
+
+ if "blog_password_push" in self.json_data["test_blog"]:
+ self.blog_password_push = self.json_data["test_blog"]["blog_password_push"]
+ else:
+ self.logger.info("blog_password_push not in test_blog json")
+
+ if "blog_flag" in self.json_data["test_blog"]:
+ self.blog_flag = self.json_data["test_blog"]["blog_flag"]
+ else:
+ self.logger.info("blog_flag not in test_blog json")
+
def read_test_generic(self):
if "radio_used" in self.json_data["test_generic"]:
self.radio_lf = self.json_data["test_generic"]["radio_used"]