Mercurial > processmanager
annotate ProcessManager.py @ 4:f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
author | Atul Varma <varmaa@toolness.com> |
---|---|
date | Wed, 19 Mar 2008 00:01:25 +0000 |
parents | 6d1dc2d106f6 |
children | 7e11415cf272 |
rev | line source |
---|---|
0
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
1 # ---------------------------------------------------------------------------- |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
2 # Copyright (c) 2006, Humanized, Inc. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
3 # All rights reserved. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
4 # |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
5 # Redistribution and use in source and binary forms, with or without |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
6 # modification, are permitted provided that the following conditions |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
7 # are met: |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
8 # |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
9 # * Redistributions of source code must retain the above copyright |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
10 # notice, this list of conditions and the following disclaimer. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
11 # |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
12 # * Redistributions in binary form must reproduce the above |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
13 # copyright notice, this list of conditions and the following |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
14 # disclaimer in the documentation and/or other materials provided |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
15 # with the distribution. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
16 # |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
17 # * Neither the name of Humanized, Inc. nor the names of its |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
18 # contributors may be used to endorse or promote products derived |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
19 # from this software without specific prior written permission. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
20 # |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
21 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
22 # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
23 # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
24 # FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
25 # COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
26 # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
27 # BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
28 # LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
29 # CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
30 # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
31 # ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
32 # POSSIBILITY OF SUCH DAMAGE. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
33 # ---------------------------------------------------------------------------- |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
34 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
35 # ---------------------------------------------------------------------------- |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
36 # |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
37 # ProcessManager.py |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
38 # Author: Atul Varma <atul@humanized.com> |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
39 # |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
40 # Python Version - 2.4 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
41 # |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
42 # ---------------------------------------------------------------------------- |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
43 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
44 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
45 A simple module for process management. Please see the file |
3 | 46 README, included with this distribution, for more |
47 information. | |
0
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
48 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
49 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
50 # ---------------------------------------------------------------------------- |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
51 # TODO's |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
52 # |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
53 # * Document the public methods better. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
54 # ---------------------------------------------------------------------------- |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
55 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
56 # ---------------------------------------------------------------------------- |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
57 # Imports |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
58 # ---------------------------------------------------------------------------- |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
59 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
60 import os |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
61 import sys |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
62 import time |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
63 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
64 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
65 # ---------------------------------------------------------------------------- |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
66 # Public Names and Version Information |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
67 # ---------------------------------------------------------------------------- |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
68 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
69 __all__ = [ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
70 "Process", |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
71 "init", |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
72 "add", |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
73 "rcScriptMain", |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
74 "main" |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
75 ] |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
76 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
77 __version__ = "0.0.4" |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
78 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
79 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
80 # ---------------------------------------------------------------------------- |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
81 # Constants |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
82 # ---------------------------------------------------------------------------- |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
83 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
84 # Amount of time we wait in seconds after starting a process to see if |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
85 # it's still alive. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
86 POST_PROCESS_START_DELAY = 5 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
87 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
88 # Amount of time we wait in seconds after killing a process to see if |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
89 # it's dead. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
90 POST_PROCESS_STOP_DELAY = 2 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
91 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
92 # A list of all valid commands, accessible from the command-line; they |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
93 # map directly to public instance methods of the Process class. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
94 COMMANDS = { |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
95 "stop" : "stop the target", |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
96 "start" : "start the target", |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
97 "restart" : "restart (stop, then start) the target", |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
98 "status" : "show status of the target" |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
99 } |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
100 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
101 # Usage string when running the module's main() function. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
102 USAGE_TEXT = """\ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
103 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
104 %(scriptName)s <target> <command> [options] |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
105 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
106 targets: |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
107 %(targets)s\ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
108 all (this target applies the command to all |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
109 of the above targets) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
110 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
111 commands: |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
112 %(commands)s\ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
113 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
114 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
115 # Usage string when running the module's rcScriptMain() function. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
116 RC_SCRIPT_USAGE_TEXT = """\ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
117 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
118 %(scriptName)s <command> [options] |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
119 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
120 This script controls %(targetDesc)s. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
121 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
122 commands: |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
123 %(commands)s\ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
124 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
125 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
126 # ---------------------------------------------------------------------------- |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
127 # Module Variables |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
128 # ---------------------------------------------------------------------------- |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
129 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
130 # Directory where all intermediate data files are kept. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
131 _dataDir = None |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
132 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
133 # Our process registry; keys are the name identifiers for processes, |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
134 # and the values are Process objects. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
135 _processes = {} |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
136 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
137 # OptionParser object representing command-line options parser. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
138 _parser = None |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
139 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
140 # object storing command-line options, created by an OptionParser |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
141 # object. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
142 _options = None |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
143 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
144 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
145 # ---------------------------------------------------------------------------- |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
146 # Process Class |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
147 # ---------------------------------------------------------------------------- |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
148 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
149 class Process: |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
150 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
151 Encapsulates a process that can be stopped, started, and |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
152 restarted. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
153 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
154 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
155 def __init__( self, |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
156 name, |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
157 desc, |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
158 program, |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
159 args, |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
160 workingDir, |
4
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
161 uid = None, |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
162 gid = None, |
0
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
163 stopSignal = None ): |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
164 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
165 Creates a process with the given name/identifier, description, |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
166 program executable path, argument tuple, and working |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
167 directory. When it is run, it will run with the given user |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
168 and group ID privileges. When it is stopped, the given signal |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
169 will be sent to tell it to do so. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
170 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
171 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
172 if stopSignal == None: |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
173 import signal |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
174 stopSignal = signal.SIGKILL |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
175 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
176 self.name = name |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
177 self.desc = desc |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
178 self.program = program |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
179 self.args = [ program ] |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
180 self.args.extend( args ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
181 self.workingDir = workingDir |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
182 self.stopSignal = stopSignal |
4
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
183 |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
184 if gid and uid: |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
185 import grp |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
186 import pwd |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
187 |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
188 self.gid = grp.getgrnam( gid )[2] |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
189 self.uid = pwd.getpwnam( uid )[2] |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
190 elif gid or uid: |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
191 raise ValueError( |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
192 "For process '%s', either gid or uid must both be None, " |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
193 "or both must be set." % self.name |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
194 ) |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
195 else: |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
196 self.gid = None |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
197 self.uid = None |
0
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
198 |
4
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
199 def canCurrentUserManage( self ): |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
200 """ |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
201 Returns whether the current user has the ability to manage this |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
202 process. |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
203 """ |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
204 |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
205 if os.getuid() == 0: |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
206 # we're running as root, so all is good. |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
207 result = True |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
208 elif self.uid is None: |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
209 # We don't need to change the user to manage the |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
210 # process, so all is good. |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
211 result = True |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
212 elif self.uid == os.getuid() and self.gid == os.getgid(): |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
213 # uid and gid are specified, but they're the |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
214 # current user, so all is good. |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
215 result = True |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
216 else: |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
217 # uid and gid are specified, they're different from |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
218 # the current user, and we're not root, so this |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
219 # isn't good. |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
220 result = False |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
221 |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
222 return result |
0
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
223 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
224 def _pidfile( self ): |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
225 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
226 Returns the filename of the pid file for this process. A pid |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
227 file just contains the pid of the process, if it's believed to |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
228 be currently running. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
229 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
230 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
231 return os.path.join( _dataDir, "%s.pid" % self.name ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
232 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
233 def _readpid( self ): |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
234 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
235 Opens the pid file for this process and gets the pid for |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
236 it. If the pid file doesn't exist, this method returns None. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
237 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
238 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
239 if not os.path.exists( self._pidfile() ): |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
240 return None |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
241 f = open( self._pidfile(), "r" ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
242 pid = int( f.read() ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
243 f.close() |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
244 return pid |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
245 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
246 def status( self ): |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
247 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
248 Public method that prints out what this process' status is |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
249 (running, stopped, etc). |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
250 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
251 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
252 print "%-30s%s" % ( self.name, self._getStatus() ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
253 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
254 def _getStatus( self ): |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
255 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
256 Returns a single word indicating the status of this process. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
257 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
258 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
259 pid = self._readpid() |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
260 if pid == None: |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
261 return "stopped" |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
262 elif _isPidRunning( pid ): |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
263 return "running" |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
264 else: |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
265 return "crashed" |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
266 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
267 def start( self ): |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
268 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
269 Public method that starts the process. If the process is |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
270 already deemed to be running, nothing happens. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
271 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
272 If the process fails to launch, raise a |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
273 ProcessStartupError exception. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
274 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
275 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
276 pid = self._readpid() |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
277 if pid != None: |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
278 if _isPidRunning( pid ): |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
279 print "Process '%s' is already running!" % self.name |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
280 return |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
281 else: |
4
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
282 print ( "Hmm. Process '%s' seems to have " |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
283 "died prematurely." % self.name ) |
0
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
284 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
285 # Start the process now. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
286 leftColumnText = "Launching %s..." % self.name |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
287 print "%-30s" % leftColumnText, |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
288 sys.stdout.flush() |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
289 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
290 self._doStart() |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
291 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
292 def _doStart( self ): |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
293 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
294 Protected implementation method that starts the actual |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
295 process. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
296 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
297 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
298 forkResult = os.fork() |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
299 if forkResult == 0: |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
300 # We're the child process. |
4
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
301 if self.uid is not None: |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
302 assert self.gid is not None |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
303 os.setgid( self.gid ) |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
304 os.setuid( self.uid ) |
0
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
305 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
306 os.chdir( self.workingDir ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
307 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
308 nullFile = os.open( "/dev/null", os.O_RDWR ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
309 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
310 # Replace stdin. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
311 os.dup2( nullFile, 0 ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
312 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
313 # Replace stdout |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
314 if not _options.enableStdout: |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
315 os.dup2( nullFile, 1 ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
316 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
317 # Replace stderr |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
318 if not _options.enableStderr: |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
319 os.dup2( nullFile, 2 ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
320 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
321 os.close( nullFile ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
322 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
323 # Launch the program. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
324 os.execv( self.program, self.args ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
325 else: |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
326 # We're the parent process. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
327 pid = forkResult |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
328 f = open( self._pidfile(), "w" ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
329 f.write( "%d" % pid ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
330 f.close() |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
331 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
332 time.sleep( POST_PROCESS_START_DELAY ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
333 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
334 retVal = os.waitpid( pid, os.WNOHANG ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
335 if retVal == (0, 0): |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
336 print "OK" |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
337 else: |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
338 print "FAILED" |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
339 raise ProcessStartupError() |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
340 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
341 def stop( self, warnCrashed = True ): |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
342 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
343 Public method that stops the process if it's currently |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
344 running. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
345 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
346 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
347 pid = self._readpid() |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
348 if pid != None: |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
349 if _isPidRunning( pid ): |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
350 leftColumnText = "Stopping %s..." % self.name |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
351 print "%-30s" % leftColumnText, |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
352 sys.stdout.flush() |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
353 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
354 os.kill( pid, self.stopSignal ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
355 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
356 time.sleep( POST_PROCESS_STOP_DELAY ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
357 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
358 if not _isPidRunning( pid ): |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
359 print "OK" |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
360 else: |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
361 print "FAILED" |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
362 elif warnCrashed: |
4
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
363 print ( "Hmm. Process '%s' seems to have " |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
364 "died prematurely." % self.name ) |
0
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
365 os.remove( self._pidfile() ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
366 else: |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
367 print "Process '%s' is not running." % self.name |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
368 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
369 def restart( self ): |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
370 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
371 Public method that stops the process and then starts it again. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
372 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
373 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
374 self.stop( warnCrashed = False ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
375 self.start() |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
376 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
377 class ProcessStartupError( Exception ): |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
378 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
379 Exception raised when a process fails to start. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
380 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
381 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
382 pass |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
383 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
384 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
385 # ---------------------------------------------------------------------------- |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
386 # Module Functions |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
387 # ---------------------------------------------------------------------------- |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
388 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
389 def init( dataDir ): |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
390 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
391 Initializes the module. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
392 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
393 dataDir is the directory where all intermediate data files are |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
394 stored (e.g., pidfiles). |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
395 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
396 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
397 global _dataDir |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
398 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
399 _dataDir = dataDir |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
400 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
401 def _isPidRunning( pid ): |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
402 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
403 Returns whether or not a process with the given pid is running. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
404 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
405 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
406 return os.path.exists( "/proc/%d" % pid ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
407 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
408 def add( process ): |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
409 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
410 Adds the given Process object as a target for the registry of |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
411 processes to manage. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
412 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
413 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
414 if _processes.has_key( process.name ): |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
415 raise TargetAlreadyExistsError() |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
416 _processes[process.name] = process |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
417 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
418 class TargetAlreadyExistsError( Exception ): |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
419 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
420 Exception raised when a target is added to the ProcessManager |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
421 whose name already exists. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
422 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
423 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
424 pass |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
425 |
4
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
426 def _runCommandOnProcesses( command, processes ): |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
427 """ |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
428 Runs the given command on the given Process objects and |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
429 returns True if successful, False if an error occurred. |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
430 """ |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
431 |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
432 success = True |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
433 |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
434 if command != "status": |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
435 for process in processes: |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
436 if not process.canCurrentUserManage(): |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
437 print ( "The process '%s' cannot be managed " |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
438 "by the current user." % process.name ) |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
439 success = False |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
440 |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
441 if success: |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
442 for process in processes: |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
443 method = getattr( process, command ) |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
444 try: |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
445 method() |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
446 except ProcessStartupError: |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
447 success = False |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
448 |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
449 return success |
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
450 |
0
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
451 def _runCommandOnTarget( command, target ): |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
452 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
453 Runs the given command on the given target. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
454 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
455 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
456 if _dataDir == None: |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
457 print "Error! ProcessManager not initialized." |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
458 print "Please use ProcessManager.init()." |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
459 sys.exit( -1 ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
460 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
461 if target == "all": |
4
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
462 processes = [ process for process in _processes.values() ] |
0
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
463 else: |
4
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
464 processes = [_processes[target]] |
0
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
465 |
4
f64af329930f
Any user can now use ProcessManager to manage processes--root is no longer required. However, an error will be displayed if the user doesn't have privileges to manage a process because a user/group change is required.
Atul Varma <varmaa@toolness.com>
parents:
3
diff
changeset
|
466 if not _runCommandOnProcesses( command, processes ): |
0
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
467 sys.exit( -1 ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
468 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
469 def _generateTargetHelpText(): |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
470 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
471 Returns a string containing a list of available targets with their |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
472 descriptions. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
473 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
474 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
475 targets = "" |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
476 for key in _processes.keys(): |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
477 targets += " %-21s%s\n" % ( key, _processes[key].desc ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
478 return targets |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
479 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
480 def _generateCommandHelpText(): |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
481 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
482 Returns a string containing a list of available commands with a |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
483 description of what they do. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
484 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
485 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
486 commands = "" |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
487 for command in COMMANDS.keys(): |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
488 commands += " %-21s%s\n" % ( command, COMMANDS[command] ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
489 commands = commands[:-1] |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
490 return commands |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
491 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
492 def rcScriptMain(): |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
493 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
494 The main function of the rc-script use of the Process Manager, |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
495 whereby the name of the script determines the target, and the |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
496 first command-line parameter determines the command. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
497 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
498 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
499 target = os.path.split( sys.argv[0] )[1] |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
500 if not _processes.has_key( target ): |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
501 # If we're in a rc.d directory, we may have 3 characters |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
502 # prepended to our name, such as "S01foo". So let's try |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
503 # stripping off the first 3 characters of our name and seeing |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
504 # if that works as a target. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
505 if target[0] in ["K", "S"]: |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
506 ordering = target[1:3] |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
507 try: |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
508 # See if these characters constitute a number. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
509 int( ordering ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
510 # If so, let's try reinterpreting our target. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
511 target = target[3:] |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
512 except ValueError: |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
513 pass |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
514 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
515 if not _processes.has_key( target ): |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
516 print "ERROR: Target '%s' does not exist!" % target |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
517 print "Consider renaming this script to match one" |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
518 print "of the following targets:" |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
519 print |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
520 print _generateTargetHelpText() |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
521 sys.exit( -1 ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
522 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
523 usageTextDict = { |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
524 "scriptName" : target, |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
525 "targetDesc" : _processes[ target ].desc, |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
526 "commands" : _generateCommandHelpText(), |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
527 } |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
528 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
529 usageText = RC_SCRIPT_USAGE_TEXT % usageTextDict |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
530 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
531 _processCmdLineOptions( usageText ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
532 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
533 if len( sys.argv ) == 1: |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
534 command = "" |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
535 else: |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
536 command = sys.argv[1] |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
537 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
538 if not command in COMMANDS.keys(): |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
539 _parser.print_help() |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
540 sys.exit( -1 ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
541 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
542 _runCommandOnTarget( command, target ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
543 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
544 def _processCmdLineOptions( usageText ): |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
545 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
546 Parses and processes standard command-line options. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
547 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
548 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
549 import optparse |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
550 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
551 global _parser |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
552 global _options |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
553 global _args |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
554 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
555 _parser = optparse.OptionParser( usage = usageText ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
556 _parser.add_option( |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
557 "-e", "--enable-stderr", |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
558 action = "store_true", dest = "enableStderr", default = False, |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
559 help = "enable output of starting target's stderr to console" |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
560 ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
561 _parser.add_option( |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
562 "-o", "--enable-stdout", |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
563 action = "store_true", dest = "enableStdout", default = False, |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
564 help = "enable output of starting target's stdout to console" |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
565 ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
566 _parser.add_option( |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
567 "-v", "--version", |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
568 action = "store_true", dest = "showVersion", default = False, |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
569 help = "print version information and exit" |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
570 ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
571 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
572 ( _options, _args ) = _parser.parse_args() |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
573 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
574 if _options.showVersion: |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
575 print "ProcessManager v%s (invoked via %s)" % \ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
576 ( __version__, sys.argv[0] ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
577 sys.exit( 0 ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
578 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
579 def main(): |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
580 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
581 The main function of the Process Manager which processes |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
582 command-line arguments and acts on them. |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
583 """ |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
584 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
585 usageTextDict = { |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
586 "scriptName" : os.path.split( sys.argv[0] )[1], |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
587 "targets" : _generateTargetHelpText(), |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
588 "commands" : _generateCommandHelpText(), |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
589 } |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
590 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
591 usageText = USAGE_TEXT % usageTextDict |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
592 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
593 _processCmdLineOptions( usageText ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
594 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
595 if len( _args ) < 2: |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
596 _parser.print_help() |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
597 sys.exit( -1 ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
598 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
599 target = _args[0] |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
600 command = _args[1] |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
601 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
602 if target not in _processes.keys() and target != "all": |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
603 print "Invalid target: '%s'" % target |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
604 sys.exit( -1 ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
605 if command not in COMMANDS.keys(): |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
606 print "Invalid command: '%s'" % command |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
607 sys.exit( -1 ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
608 |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
609 _runCommandOnTarget( command, target ) |
3f775e3235fb
Origination, taken from http://www.humanized.com/ProcessManager/ProcessManager-0.0.4.tar.gz (just renamed README.txt to README).
Atul Varma <varmaa@toolness.com>
parents:
diff
changeset
|
610 |