I'm experimenting with the daemon module <http://pypi.python.org/pypi/python-daemon/> and upstart <http://upstart.ubuntu.com/>. There's something I don't understand, which may be more of an upstart issue than a python issue, but I thought I'd start by posting here.
Here's a test script: #!/usr/bin/python2.6 import daemon import time def work(): count = 0 while True: with open('/tmp/test.txt', 'a') as f: f.write(str(count)) f.write('\n') count += 1 time.sleep(5) def main(): with daemon.DaemonContext(working_directory='/tmp'): work() if __name__ == "__main__": main() and here's a testdaemon.conf upstart configuration: description "test daemon" expect daemon chdir /tmp exec /tmp/testdaemon.py If I do "sudo start testdaemon" I see the "testdaemon.py" process starting, and the file '/tmp/test.txt' is being written to every 5 seconds, so everything has kicked off. The thing I don't understand is why start does not return. I guess it doesn't think that the process and properly started and daemonized itself? Quite possibly it's just that I don't understand this stuff well... -- http://mail.python.org/mailman/listinfo/python-list