Code

various updates
[roundup.git] / doc / FAQ.txt
index d78da85fc508123806d8cfd23854b7fb54d2954a..a96f9ba7b56913d5360cd3c9c1f54db901d6f245 100644 (file)
+===========
 Roundup FAQ
 ===========
 
-:Date: $Date: 2002-03-13 23:00:48 $
+:Version: $Revision: 1.15 $
 
-NOTE: This is just a grabbag, most of this should go into documentation.
+.. contents::
 
-Changing HTML layout
---------------------
 
-Note changes to the files in html take place immediatly without
-restart, even when running roundup-server.
+Installation
+------------
 
-Displaying whole messages not only the summary
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Living without a mailserver
+~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-Modify instance/html/msg.index change::
+Remove the nosy reactor, means delete the tracker file
+``detectors/nosyreactor.py`` from your tracker home.
 
-   <td><display call="plain('summary')"></td>
 
-to::
+The cgi-bin is very slow!
+~~~~~~~~~~~~~~~~~~~~~~~~~
 
-   <td><pre><display call="plain('content')"></pre></td>
+Yep, it sure is. It has to start up Python and load all of the support
+libraries for *every* request.
 
-displays the whole message not only the first line and 'pre'
-prevents the browser from reformatting. 
+The solution is to use the built in server.
 
-Getting the nosy list picker instead of textfield
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+To make Roundup more seamless with your website, you may place the built
+in server behind apache and link it into your web tree
+
+
+How do I put Roundup behind Apache
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+We have a project (foo) running on ``foohost.com:8888``.
+We want ``http://foohost.com/FooIssues`` to use the roundup server, so we 
+set that up on port 8888 on ``foohost.com`` with the ``config.py`` line::
+
+  TRACKER_WEB = 'http://foohost.com/FooIssues/'
+
+We have a "foo_issues" tracker and we run the server with::
 
-In classic template there is plenty of space below the text field.
-So one could modify instance/html/issue.item to use it.
+  roundup-server -p 8888 foo_issues=/home/roundup/trackers/foo_issues 
 
-At the file top set 'border=1' to see cell boundaries, then
-replace::
+Then, on the Apache machine (eg. redhat 7.3 with apache 1.3), in
+``/etc/httpd/conf/httpd.conf`` uncomment::
 
-  <td class="form-text"><display call="field('nosy',size=20)"></td>
+  LoadModule proxy_module       modules/libproxy.so
+
+and::
+
+  AddModule mod_proxy.c
+
+Then add::
+
+  # roundup stuff (added manually)
+  <IfModule mod_proxy.c>
+
+  RewriteEngine on
   
-by::
+  # General Roundup
+  RewriteRule ^/Roundup$  Roundup/    [R]
+  RewriteRule ^/Roundup/(.*) http://foohost.com:8888/$1   [P]
+  
+  # Redirect to Foo Issues
+  RewriteRule ^/Roundup/foo_issues(.*) FooIssues$1    [R]
+  
+  # Handle Foo Issues
+  RewriteRule ^/FooIssues$  FooIssues/    [R]
+  RewriteRule ^/FooIssues/(.*) http://foohost.com:8888/foo_issues/$1 [P]
+  
+  </IfModule>
 
-  <td rowspan=5 class="form-text"><display call="menu('nosy',height=10)"></td>
+Then restart Apache. Now Apache will proxy the request on to the
+roundup-server.
 
-and remove the last cell in the next four rows, either by deleting a cell
-or by reducing colspan.
+You need to add the last 3 RewriteRule lines for each tracker that you have.
 
-Want to see the issue id (the number) on the issue item display
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+You can now firewall off port 8888 from the rest of the world.
 
-The number is really a central information and not an internal one.
 
-In file INSTANCE/html/issue.item displays the creator, so one could add
-the number to it.::
+Roundup runs very slowly on my XP machine when accessed from the Internet
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-  <td class="form-text"><display call="reldate('creation', pretty=1)">
-      (<display call="plain('creator')">)</td>
+The issue is probably related to host name resolution for the client
+performing the request. You can turn off the resolution of the names
+when it's so slow like this. To do so, edit the module
+roundup/scripts/roundup_server.py around line 77 to add the following
+to the RoundupRequestHandler class:
 
-to see::
+     def address_string(self):
+         return self.client_address[0]
 
-  <td class="form-text"><display call="reldate('creation', pretty=1)">
-      (issue<display call="plain('id')"> by <display call="plain('creator')">)</td>
 
-Installation
-------------
+Templates
+---------
+
+What is that stuff in the tracker html directory?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+This is the template code that Roundup uses to display the various pages.
+This is based upon the template markup language in Zope called, oddly
+enough "Zope Page Templates". There's documentation in the Roundup
+customisation_ documentation. For more information have a look at:
+
+   http://www.zope.org/Documentation/Books/ZopeBook/current/contents
+
+specifically chapter 5 "Using Zope Page Templates" and chapter 9 "Advanced
+Page Templates".
+
+
+But I just want a select/option list for ....
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Really easy... edit ``html/issue.item``. For 'nosy', change line 53 from::
 
-Living without a mailserver.
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+  <span tal:replace="structure context/nosy/field" />
 
-Remove the nosy reactor, means delete the file
-'INSTANCE/detectors/nosyreactor.py'.
+to::
+
+  <span tal:replace="structure context/nosy/menu" />
+
+For 'assigned to', change line 61 from::
 
+  <td tal:content="structure context/assignedto/field">assignedto menu</td>
+
+to::
 
-Rights issues (MISSING)
-~~~~~~~~~~~~~~~~~~~~~~~
+  <td tal:content="structure context/assignedto/menu">assignedto menu</td>
 
-Different jobs run under different users.
 
-* Standalone roundup-server is started by whome ?
 
-* Running cgi under apache.
+Great! But now the select/option list is too big
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-* roundup-mailgw called via .forward from MTA, or running a cron job
-  fetching via pop.
+Thats a little harder (but only a little ;^)
+
+Again, edit ``html/issue.item``. For nosy, change line 53 from:
+
+  <span tal:replace="structure context/nosy/field" />
+
+to::
 
-see Troubleshooting_.
+  <span tal:replace="structure python:context.nosy.menu(height=3)" />
 
+for more information, go and read about Zope Page Templates.
 
-Troubleshooting
----------------
 
-AttributeError: '_roundup_instance_1' module has no attribute 'open'
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Using Roundup
+-------------
 
-For example submitting issues via roundup-mailgw breaks similar to this::
+I got an error and I cant reload it!
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-  Command died with status 1:
-  "/usr/local/bin/python /usr/local/bin/roundup-mailgw /home/roundup".
-  Command output: Traceback (most recent call last):  
-    File "/usr/local/bin/roundup-mailgw", line 178, in ? 
-       sys.exit(main(sys.argv))
-    File "/usr/local/bin/roundup-mailgw", line 153, in main 
-      db = instance.open('admin')
-       AttributeError: '_roundup_instance_1' module has no attribute 'open'
+If you're using Netscape/Mozilla, try holding shift and pressing reload.
+If you're using IE then install Mozilla and try again ;^)
 
-Happens if the user which accesses the instance has no read right
-on 'INSTANCE/dbinit.py' or 'pyc'. 
 
-If the user has no rights on the 'INSTANCE/db' the mailgw finishes,
-but is, of course, unable to add the message. A notification to
-the roundup-admin is sent, with a longer trace ending in::
+I keep getting logged out
+~~~~~~~~~~~~~~~~~~~~~~~~~
 
-  File "/opt/python/lib/python2.2/dbhash.py", line 16, in open
-    return bsddb.hashopen(file, flag, mode)
-  error: (13, 'Keine Berechtigung')
+Make sure that the TRACKER_WEB setting in your tracker's config.py is set
+to the URL of the tracker.
 
-Replace 'Keine Berechtigung' by 'Not permitted' or ...
 
-An easy way to test whether it's a permissions problem, or some other mail
-server configuration problem is to cat an email-formatted text file
-directly to the roundup-mailgw script as the roundup user.::
+-----------------
 
-  cat issue.txt | /usr/local/bin/roundup-mailgw /home/roundup
+Back to `Table of Contents`_
 
-If that doesn't raise any errors, the problem is the permissions of the
-MTA. 
+.. _`Table of Contents`: index.html
+.. _`customisation`: customizing.html