]> git.proxmox.com Git - mirror_ifupdown2.git/blame - ifupdown2/ifupdownaddons/systemutils.py
addons: tunnel: fix tunnel creation (#80)- master branch refactoring
[mirror_ifupdown2.git] / ifupdown2 / ifupdownaddons / systemutils.py
CommitLineData
dae9c5de
WK
1#!/usr/bin/python
2#
d486dd0d 3# Copyright 2015-2017 Cumulus Networks, Inc. All rights reserved.
dae9c5de
WK
4# Author: Roopa Prabhu, roopa@cumulusnetworks.com
5#
6
7import os
d486dd0d
JF
8
9try:
10 from ifupdown2.ifupdown.utils import utils
11 from ifupdown2.ifupdownaddons.utilsbase import *
12except ImportError:
13 from ifupdown.utils import utils
14 from ifupdownaddons.utilsbase import *
15
dae9c5de
WK
16
17class systemUtils():
18 @classmethod
19 def is_service_running(cls, procname=None, pidfile=None):
20 utilsobj = utilsBase()
21 if pidfile:
22 if os.path.exists(pidfile):
23 pid = utilsobj.read_file_oneline(pidfile)
24 if not os.path.exists('/proc/%s' %pid):
25 return False
26 else:
27 return False
28 return True
29
30 if procname:
31 try:
d486dd0d
JF
32 utils.exec_command('%s %s' %
33 (utils.pidof_cmd, procname))
dae9c5de
WK
34 except:
35 return False
36 else:
37 return True
38
39 return False
20045383
RP
40
41 @classmethod
42 def check_service_status(cls, servicename=None):
43 if not servicename:
44 return False
20045383 45 try:
d486dd0d
JF
46 utils.exec_commandl([utils.service_cmd,
47 servicename, 'status'])
20045383
RP
48 except Exception:
49 # XXX: check for subprocess errors vs os error
50 return False
51 return True
5f8c03e7
RP
52
53 @classmethod
54 def is_process_running(self, processname):
55 if not processname:
56 return False
5f8c03e7 57 try:
d486dd0d
JF
58 utils.exec_command('%s %s' %
59 (utils.pidof_cmd, processname))
5f8c03e7
RP
60 except:
61 return False
62 else:
63 return True