Log message for revision 74938:
  #2318: Allow override of zopectl's control socket in zope.conf
  
  

Changed:
  U   Zope/branches/2.10/doc/CHANGES.txt
  U   Zope/branches/2.10/lib/python/Zope2/Startup/zopectl.py
  U   Zope/branches/2.10/lib/python/Zope2/Startup/zopeschema.xml

-=-
Modified: Zope/branches/2.10/doc/CHANGES.txt
===================================================================
--- Zope/branches/2.10/doc/CHANGES.txt  2007-04-30 17:11:03 UTC (rev 74937)
+++ Zope/branches/2.10/doc/CHANGES.txt  2007-04-30 17:23:29 UTC (rev 74938)
@@ -7,6 +7,9 @@
   Zope 2.10.4 (unreleased)
 
     Bugs fixed
+
+      - Collector #2318: Allow override of zopectl's control socket in
+        zope.conf
     
   Zope 2.10.3 (2007/03/25)
 

Modified: Zope/branches/2.10/lib/python/Zope2/Startup/zopectl.py
===================================================================
--- Zope/branches/2.10/lib/python/Zope2/Startup/zopectl.py      2007-04-30 
17:11:03 UTC (rev 74937)
+++ Zope/branches/2.10/lib/python/Zope2/Startup/zopectl.py      2007-04-30 
17:23:29 UTC (rev 74938)
@@ -26,6 +26,7 @@
 -l/--logfile -- log file to be read by logtail command
 -u/--user -- run the daemon manager program as this user (or numeric id)
 -m/--umask -- provide octal umask for files created by the managed process
+-s/--socket-name -- socket between zopectl and zdrun
 action [arguments] -- see below
 
 Actions are commands like "start", "stop" and "status".  If -i is
@@ -45,6 +46,7 @@
 from zdaemon.zdctl import ZDCmd
 from zdaemon.zdoptions import ZDOptions
 from ZConfig.components.logger.handlers import FileHandlerFactory
+from ZConfig.datatypes import existing_dirpath
 
 
 def string_list(arg):
@@ -86,6 +88,8 @@
         self.add("user", "runner.user", "u:", "user=")
         self.add("prompt", "runner.prompt", default="zopectl>")
         self.add("umask", "runner.umask", "m:", "umask=")
+        self.add("sockname", "runner.socket_name", "s:", "socket-name=",
+                 existing_dirpath, default=None)
 
     def realize(self, *args, **kw):
         ZDOptions.realize(self, *args, **kw)
@@ -116,7 +120,10 @@
             self.program = config.runner.program
         else:
             self.program = [os.path.join(self.directory, "bin", "runzope")]
-        self.sockname = os.path.join(self.clienthome, "zopectlsock")
+        if config.runner and config.runner.socket_name:
+            self.sockname = config.runner.socket_name
+        else:
+            self.sockname = os.path.join(self.clienthome, "zopectlsock")
         self.python = sys.executable
         self.zdrun = os.path.join(os.path.dirname(zdaemon.__file__),
                                   "zdrun.py")

Modified: Zope/branches/2.10/lib/python/Zope2/Startup/zopeschema.xml
===================================================================
--- Zope/branches/2.10/lib/python/Zope2/Startup/zopeschema.xml  2007-04-30 
17:11:03 UTC (rev 74937)
+++ Zope/branches/2.10/lib/python/Zope2/Startup/zopeschema.xml  2007-04-30 
17:23:29 UTC (rev 74938)
@@ -193,6 +193,17 @@
        </description>
     </key>
 
+    <key name="socket-name" datatype="existing-dirpath" required="no">
+      <description>
+        Command-line option: -s or --socket-name.
+
+        The pathname of the Unix domain socket used for communication
+        between zopectl.py and zdrun.py.  The default is relative to the
+        current directory in which zdctl.py and zdrun.py are started.
+        You want to specify an absolute pathname here.
+      </description>
+    </key>
+
   </sectiontype>
 
   <sectiontype name="zodb_db" datatype=".ZopeDatabase"

_______________________________________________
Zope-Checkins maillist  -  Zope-Checkins@zope.org
http://mail.zope.org/mailman/listinfo/zope-checkins

Reply via email to