diff options
-rw-r--r-- | src/linux/__init__.py | 1 | ||||
-rw-r--r-- | src/linux/ogOperations.py | 46 | ||||
-rw-r--r-- | src/ogClient.py | 2 | ||||
-rw-r--r-- | src/ogRest.py | 3 |
4 files changed, 51 insertions, 1 deletions
diff --git a/src/linux/__init__.py b/src/linux/__init__.py new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/src/linux/__init__.py @@ -0,0 +1 @@ + diff --git a/src/linux/ogOperations.py b/src/linux/ogOperations.py new file mode 100644 index 0000000..0d70f76 --- /dev/null +++ b/src/linux/ogOperations.py @@ -0,0 +1,46 @@ +# +# Copyright (C) 2021 Soleta Networks <info@soleta.eu> +# +# This program is free software: you can redistribute it and/or modify it under +# the terms of the GNU Affero General Public License as published by the +# Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. + +import os +from src.ogRest import ThreadState + + +class OgLinuxOperations: + + def _restartBrowser(self, url): + raise NotImplementedError + + def poweroff(self): + os.system('systemctl poweroff') + + def reboot(self): + os.system('systemctl reboot') + + def shellrun(self, request, ogRest): + raise NotImplementedError + + def session(self, request, ogRest): + raise NotImplementedError + + def hardware(self, path, ogRest): + raise NotImplementedError + + def setup(self, request, ogRest): + raise NotImplementedError + + def image_restore(self, request, ogRest): + raise NotImplementedError + + def image_create(self, path, request, ogRest): + raise NotImplementedError + + def refresh(self, ogRest): + return {"status": "LINUX"} + + def probe(self, ogRest): + return {'status': 'LINUX' if ogRest.state != ThreadState.BUSY else 'BSY'} diff --git a/src/ogClient.py b/src/ogClient.py index 78130fb..d842ee5 100644 --- a/src/ogClient.py +++ b/src/ogClient.py @@ -30,7 +30,7 @@ class ogClient: self.CONFIG = config self.mode = self.CONFIG['opengnsys']['mode'] - if self.mode not in {'virtual', 'live'}: + if self.mode not in {'virtual', 'live', 'linux'}: raise ValueError('Mode not supported.') if self.CONFIG['samba']['activate']: diff --git a/src/ogRest.py b/src/ogRest.py index 855179e..0d8ff87 100644 --- a/src/ogRest.py +++ b/src/ogRest.py @@ -264,6 +264,9 @@ class ogRest(): self.operations = OgVirtualOperations() threading.Thread(target=self.operations.check_vm_state_loop, args=(self,)).start() + elif self.mode == 'linux': + from src.linux.ogOperations import OgLinuxOperations + self.operations = OgLinuxOperations() else: raise ValueError('Mode not supported.') |