summaryrefslogtreecommitdiffstats
path: root/src/linux
diff options
context:
space:
mode:
authorJavier Sánchez Parra <jsanchez@soleta.eu>2020-04-16 10:33:35 +0200
committerJavier Sánchez Parra <jsanchez@soleta.eu>2020-04-16 13:29:06 +0200
commitf0c550ee2a8bed2238a1fe9fdf83ce1f7b229377 (patch)
tree44bad18cce9096ed26f2eecf639f673b9702389e /src/linux
parenta32bf4071e3364a4c92cbda270c65415ce1bfc1a (diff)
Change browser behaviour
We have observed that the browser did not show changes. This happens because the ogClient opens the browser at the beginning and forget about it. To show correctly the changes ogClient had to restart the browser every time the menu html changes. This commit changes the behaviour to restart the browser when the menu html has changed.
Diffstat (limited to 'src/linux')
-rw-r--r--src/linux/ogOperations.py21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/linux/ogOperations.py b/src/linux/ogOperations.py
index cb78eb0..62e6a17 100644
--- a/src/linux/ogOperations.py
+++ b/src/linux/ogOperations.py
@@ -13,6 +13,19 @@ from src.ogConfig import *
OG_SHELL = '/bin/bash'
class OgLinuxOperations:
+
+ _ogconfig = ogConfig()
+ _config_path = f'{ogConfig.OG_PATH}ogclient/cfg/ogclient.cfg'
+ _ogconfig.parser_file(_config_path)
+ _url = _ogconfig.get_value_section('opengnsys', 'url')
+
+ def _restartBrowser(self):
+ try:
+ proc = subprocess.call(["pkill", "-9", "browser"])
+ proc = subprocess.Popen(["browser", "-qws", OgLinuxOperations._url])
+ except:
+ raise ValueError('Error: cannot restart browser')
+
def parseGetConf(self, out):
parsed = {'serial_number': '',
'disk_setup': '',
@@ -66,6 +79,8 @@ class OgLinuxOperations:
except:
raise ValueError('Error: Incorrect command value')
+ self._restartBrowser()
+
return output.decode('utf-8')
def session(self, request, ogRest):
@@ -142,6 +157,8 @@ class OgLinuxOperations:
cmd_get_conf = f'{ogConfig.OG_PATH}interfaceAdm/getConfiguration'
result = subprocess.check_output([cmd_get_conf], shell=True)
+ self._restartBrowser()
+
return self.parseGetConf(result.decode('utf-8'))
def image_restore(self, request, ogRest):
@@ -164,6 +181,8 @@ class OgLinuxOperations:
except:
raise ValueError('Error: Incorrect command value')
+ self._restartBrowser()
+
return output.decode('utf-8')
def image_create(self, path, request, ogRest):
@@ -210,4 +229,6 @@ class OgLinuxOperations:
except:
raise ValueError('Error: Incorrect command value')
+ self._restartBrowser()
+
return self.parseGetConf(output.decode('utf-8'))