Thank you!
I still disagree with the following statement:
While this is a reasonable expectation, twistd does quite a lot and
it wouldn't be quite right to pass on all the arguments in a flat
list the way Python does.
Something can be done about that. One possible approach could be to
use two argument lists (one - 'twistd' arguments, second -
application's arguments) and enforce following rule(s):
- all arguments that follow after 'twistd' but before Python file name
(*.py) are considered as 'twistd' arguments (loaded into <twistdArgs>
list;
- all arguments that follow Python file name (*.py) are considered as
Python application's arguments (loaded into <appArgs> list and get
passed to that application)
Thus, it should be possible to execute following commands:
twistd <twistd_args> *.py <app_args>
Using this approach, it should be simple enough (at least - logically)
to allow passing arguments to an application. Of course, this would
also limit "duplicate" arguments (same argument appearing in both
lists) - due to 'getopt' limitations... But if these rules and
limitations are well documented - developers should be able to work
around this problem.
I suggest that Twisted dev. team looks into implementing this...
Kind regards,
Valeriy Pogrebitskiy
vpogr...@verizon.net
On Oct 1, 2009, at 4:55 PM, Glyph Lefkowitz wrote:
On Thu, Oct 1, 2009 at 2:17 PM, Valeriy Pogrebitskiy <vpogr...@verizon.net
> wrote:
I came across some problem using 'twistd' utility - that I would not
have expected from it. The problem is - using 'twistd' to start
application that requires command-line arguments. In other words, I
would expect that 'twistd' passes command-line arguments to Python
application - just as Python does.
While this is a reasonable expectation, twistd does quite a lot and
it wouldn't be quite right to pass on all the arguments in a flat
list the way Python does.
My question is: how is it possible to use 'twistd' to start
applications that do require command-line arguments? Does anyone
have suggestions?
twistd doesn't do this for scripts passed with the '-y' option.
Those are supposed to be fully-formed configuration files; the
options are present in the file itself.
However, it's fairly straightforward to get what you want. Instead
of writing a python configuration file, write a plug-in for twistd.
The technique for doing so is documented here:
<http://twistedmatrix.com/projects/core/documentation/howto/tap.html>
Hope this helps.
_______________________________________________
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python
_______________________________________________
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python