Skip to content

Commit d0026ae

Browse files
committed
Print usage message on when given '-?'.
Closes Supervisor#1251
1 parent ae60a73 commit d0026ae

File tree

3 files changed

+19
-0
lines changed

3 files changed

+19
-0
lines changed

CHANGES.rst

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,9 @@
1717
- The ``supervisorctl signal`` command now allows a signal to be sent
1818
when a process is in the ``STOPPING`` state. Patch by Mike Gould.
1919

20+
- ``supervisorctl`` and ``supervisord`` now print help when given ``-?``
21+
in addition to the existing ``-h``/``--help``.
22+
2023
4.2.1 (2020-08-20)
2124
------------------
2225

supervisor/options.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -102,6 +102,7 @@ def __init__(self, require_configfile=True):
102102
self.attr_priorities = {}
103103
self.require_configfile = require_configfile
104104
self.add(None, None, "h", "help", self.help)
105+
self.add(None, None, "?", None, self.help)
105106
self.add("configfile", None, "c:", "configuration=")
106107

107108
here = os.path.dirname(os.path.dirname(sys.argv[0]))

supervisor/tests/test_end_to_end.py

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -206,6 +206,21 @@ def test_issue_1231c(self):
206206
timeout=30)
207207
supervisorctl.expect('Unicode output may fail.', timeout=30)
208208

209+
def test_issue_1251(self):
210+
args = ['-m', 'supervisor.supervisord', '-?']
211+
supervisord = pexpect.spawn(sys.executable, args, encoding='utf-8')
212+
self.addCleanup(supervisord.kill, signal.SIGINT)
213+
supervisord.expect_exact("supervisord -- run a set of applications")
214+
supervisord.expect_exact("-l/--logfile FILENAME -- use FILENAME as")
215+
supervisord.expect(pexpect.EOF)
216+
217+
args = ['-m', 'supervisor.supervisorctl', '-?']
218+
supervisorctl = pexpect.spawn(sys.executable, args, encoding='utf-8')
219+
self.addCleanup(supervisorctl.kill, signal.SIGINT)
220+
supervisorctl.expect_exact("supervisorctl -- control applications")
221+
supervisorctl.expect_exact("-i/--interactive -- start an interactive")
222+
supervisorctl.expect(pexpect.EOF)
223+
209224
def test_issue_1298(self):
210225
filename = pkg_resources.resource_filename(__name__, 'fixtures/issue-1298.conf')
211226
args = ['-m', 'supervisor.supervisord', '-c', filename]

0 commit comments

Comments
 (0)