]>
Commit | Line | Data |
---|---|---|
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 | ||
7 | import os | |
d486dd0d JF |
8 | |
9 | try: | |
10 | from ifupdown2.ifupdown.utils import utils | |
11 | from ifupdown2.ifupdownaddons.utilsbase import * | |
12 | except ImportError: | |
13 | from ifupdown.utils import utils | |
14 | from ifupdownaddons.utilsbase import * | |
15 | ||
dae9c5de WK |
16 | |
17 | class 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 |