From 2d7ded9d0ca332b47e0e49c463b067614f547085 Mon Sep 17 00:00:00 2001 From: Jeffrey Townsend Date: Fri, 27 May 2016 19:36:37 +0000 Subject: [PATCH] Onl Utility Classes. --- .../src/python/onl/util/__init__.py | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 packages/base/all/vendor-config-onl/src/python/onl/util/__init__.py diff --git a/packages/base/all/vendor-config-onl/src/python/onl/util/__init__.py b/packages/base/all/vendor-config-onl/src/python/onl/util/__init__.py new file mode 100644 index 00000000..0a96d689 --- /dev/null +++ b/packages/base/all/vendor-config-onl/src/python/onl/util/__init__.py @@ -0,0 +1,20 @@ +import subprocess + +class OnlServiceMixin(object): + def _execute(self, cmd, root=False, ex=True): + self.logger.debug("Executing: %s" % cmd) + if root is True and os.getuid() != 0: + cmd = "sudo " + cmd + try: + subprocess.check_call(cmd, shell=True) + except Exception, e: + if ex: + self.logger.error("Command failed: %s" % e) + raise + else: + return e.returncode + + def _raise(self, msg, klass): + self.logger.critical(msg) + raise klass(msg) +