annotate doc/installation.txt @ 8487:b09ef85f0da6

feat: add nanoid pkg trace_id gen and decorator for setting processName nanoid is a shorter unique id generator and faster than uuid. I truncate nanoid id's to 12 chars to make it more readable. Also added decorator to allow setting the default processName definition in the logging module. admin.py and wsgi_handler now set processName. configuration.py knows how to overide the processName if set to the default MainProcess. Updated install docs to add nanoid as optional, how to switch to different trace_id output. pydoc generated docs include logcontext module and are referenced from admin.py.
author John Rouillard <rouilj@ieee.org>
date Mon, 08 Dec 2025 00:23:14 -0500
parents 1522e0e15903
children 7142740e6547
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
6586
24e2eeb2ed9a Add meta description to some doc pages.
John Rouillard <rouilj@ieee.org>
parents: 6581
diff changeset
1 .. meta::
6774
e7b4ad2c57ac landmarks, skiplink, remove bad attrs, autocomplete search
John Rouillard <rouilj@ieee.org>
parents: 6769
diff changeset
2 :description:
6586
24e2eeb2ed9a Add meta description to some doc pages.
John Rouillard <rouilj@ieee.org>
parents: 6581
diff changeset
3 Everything about installing the Roundup issue tracker web and
24e2eeb2ed9a Add meta description to some doc pages.
John Rouillard <rouilj@ieee.org>
parents: 6581
diff changeset
4 mail interfaces and configuring a tracker. How to download and
24e2eeb2ed9a Add meta description to some doc pages.
John Rouillard <rouilj@ieee.org>
parents: 6581
diff changeset
5 demonstrate Roundup using using command line or
24e2eeb2ed9a Add meta description to some doc pages.
John Rouillard <rouilj@ieee.org>
parents: 6581
diff changeset
6 Docker. Optional software that adds functionality to Roundup.
24e2eeb2ed9a Add meta description to some doc pages.
John Rouillard <rouilj@ieee.org>
parents: 6581
diff changeset
7
6168
de9d602c8ce6 more index entries and CHANGES.txt update for them.
John Rouillard <rouilj@ieee.org>
parents: 6163
diff changeset
8 .. index:: Installation
de9d602c8ce6 more index entries and CHANGES.txt update for them.
John Rouillard <rouilj@ieee.org>
parents: 6163
diff changeset
9
688
b38f4f95bffd More doc tweaks
Richard Jones <richard@users.sourceforge.net>
parents: 686
diff changeset
10 ==================
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
11 Installing Roundup
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
12 ==================
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
13
686
c52122f38c9b Documentation cleanup, added info for potential (and current) developers
Richard Jones <richard@users.sourceforge.net>
parents: 659
diff changeset
14 .. contents::
6555
34cbd0e633d2 Added FastCGI deployment info, updated Docker docs; docker-compose added
John Rouillard <rouilj@ieee.org>
parents: 6522
diff changeset
15 :depth: 3
4890
609edf9de0a5 docs: Remove one nesting level from ToC on subpages
anatoly techtonik <techtonik@gmail.com>
parents: 4792
diff changeset
16 :local:
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
17
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
18
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
19 Overview
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
20 ========
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
21
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
22 A Roundup installation is made up of several pieces.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
23
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
24 Roundup scripts
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
25 These include the Roundup HTTP server, email gateway, administration
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
26 command-line interface, demo installer etc. These are usually placed
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
27 in a directory that is on your path.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
28
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
29 Roundup core code
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
30 Is installed into your Python's lib directory. We recommend
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
31 using a virtual environment for your Roundup installation.
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
32
1221
778297033003 cleanup of install docco
Richard Jones <richard@users.sourceforge.net>
parents: 1218
diff changeset
33 Roundup trackers
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
34 Trackers consist of issues (be they bug reports or otherwise). Each tracker
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
35 is put in its own directory (called a tracker home) and has its own:
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
36
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
37 * configuration files,
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
38 * HTML (web) files,
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
39 * database,
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
40 * logic files (detectors, schema, ...)
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
41
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
42 Roundup trackers are initialised with a "template" which defines the
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
43 fields usable/assignable on a per-issue basis. Descriptions of the
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
44 provided templates are given in `choosing your template`_. Usually
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
45 you start with a template then modify the tracker to implement your
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
46 desired workflow. One Roundup instalation can support multiple
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
47 trackers with different look/feel and workflow.
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
48
7137
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
49 For The Really Impatient
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
50 ========================
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
51
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
52 If you just want to give Roundup a whirl **Right Now**, follow these
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
53 directions to run ``demo.py``. Demo mode starts the `classic tracker`_
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
54 without installing Roundup on your system. If you have Docker
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
55 installed, you can run `demo mode using docker`_ instead.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
56
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
57 This is also a way to spin up a development environment or even
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
58 deploy a tracker for a handful of users.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
59
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
60 You can choose different templates and backend databases using demo
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
61 mode. For example replacing ``demo.py`` (or ``demo`` if you are using
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
62 docker) with::
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
63
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
64 demo jinja2 anydbm
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
65
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
66 will start the tracker using the jinja2 template with the dbm database
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
67 backend (rather then the default sqlite). See `Choosing Your
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
68 Template`_ for a description of available templates.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
69
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
70 (In the directions below, replace ``-2.2.0`` with the version number
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
71 of the file you downloaded. On systems that don't have a ``python3``
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
72 program you can run ``python demo.py`` instead.)
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
73
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
74 .. _install the source:
7137
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
75
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
76 1. ``python3 -m pip download roundup``
8054
7df143a5c90b docs: add link to security.txt release tarball verification.
John Rouillard <rouilj@ieee.org>
parents: 7969
diff changeset
77
7df143a5c90b docs: add link to security.txt release tarball verification.
John Rouillard <rouilj@ieee.org>
parents: 7969
diff changeset
78 * (If you are really impatient, you probably don't want to
7df143a5c90b docs: add link to security.txt release tarball verification.
John Rouillard <rouilj@ieee.org>
parents: 7969
diff changeset
79 `verify the downloaded file <security.html#verify-source-tarball>`_.)
7df143a5c90b docs: add link to security.txt release tarball verification.
John Rouillard <rouilj@ieee.org>
parents: 7969
diff changeset
80
7137
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
81 2. ``tar -xzvf roundup-2.2.0.tar.gz``
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
82
7610
cc4f2a1d271c docs: replace ' with " in windows tarfile examples
John Rouillard <rouilj@ieee.org>
parents: 7609
diff changeset
83 * if you don't have a tar command, ``python3 -c "import tarfile, sys; tarfile.open(sys.argv[1]).extractall();" roundup-2.2.0.tar.gz`` can be used.
7137
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
84
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
85 3. ``cd roundup-2.2.0``
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
86 4. ``python3 demo.py``
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
87
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
88 This will set up a classic demo tracker on your machine without
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
89 installing Roundup. [1]_ When it's done, it'll print out a URL for
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
90 your web browser at so you can explore a Roundup tracker. Three users
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
91 are set up:
7137
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
92
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
93 1. anonymous - the "default" user with permission to do very little
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
94 2. demo (password "demo") - a normal user who may create issues
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
95 3. admin (password "admin") - an administrative user who has complete
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
96 access to the tracker
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
97
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
98 Note the demo tracker removes the detector (nosyreaction.py) that
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
99 sends email notifications. If you later convert your demo tracker to
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
100 production you will need to replace the detector to send notification
7137
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
101 emails.
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
102
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
103 Once you install Roundup, you can use the ``roundup-demo`` command to
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
104 install new demo trackers.
7137
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
105
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
106 .. [1] Demo tracker is set up to be accessed by localhost browser.
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
107 If you run demo on a server host, please stop the demo (using
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
108 Control-C) after it has shown the startup notice, open file
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
109 ``demo/config.ini`` with your editor, change host name in
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
110 the ``web`` option in section ``[tracker]``, save the file,
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
111 then re-run the demo.py program.
1218
4c9882cb16a3 more docco work
Richard Jones <richard@users.sourceforge.net>
parents: 1170
diff changeset
112
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
113 .. _demo mode using docker:
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
114
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
115 Running in Demo Mode with Docker
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
116 --------------------------------
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
117
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
118 You can either:
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
119
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
120 * use a published container from hub.docker.com with
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
121 ``rounduptracker/roundup:latest``
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
122
7453
feb970243b97 Clarify docker run commands and link to admin manual section
John Rouillard <rouilj@ieee.org>
parents: 7441
diff changeset
123 and start demo mode with::
feb970243b97 Clarify docker run commands and link to admin manual section
John Rouillard <rouilj@ieee.org>
parents: 7441
diff changeset
124
feb970243b97 Clarify docker run commands and link to admin manual section
John Rouillard <rouilj@ieee.org>
parents: 7441
diff changeset
125 docker run --rm -p 127.0.0.1:8917:8080 --name roundup_demo -v \
feb970243b97 Clarify docker run commands and link to admin manual section
John Rouillard <rouilj@ieee.org>
parents: 7441
diff changeset
126 $PWD:/usr/src/app/tracker rounduptracker/roundup:latest demo
feb970243b97 Clarify docker run commands and link to admin manual section
John Rouillard <rouilj@ieee.org>
parents: 7441
diff changeset
127
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
128 or
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
129
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
130 * Use steps 1-3 to `install the source`_ then
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
131
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
132 * build a local docker container using::
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
133
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
134 docker build -t roundup-app -f scripts/Docker/Dockerfile .
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
135
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
136 (see `Docker Support`_ and `Building a Docker Container`_ for more
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
137 details)
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
138
7453
feb970243b97 Clarify docker run commands and link to admin manual section
John Rouillard <rouilj@ieee.org>
parents: 7441
diff changeset
139 and start demo mode with::
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
140
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
141 docker run --rm -p 127.0.0.1:8917:8080 --name roundup_demo -v \
7453
feb970243b97 Clarify docker run commands and link to admin manual section
John Rouillard <rouilj@ieee.org>
parents: 7441
diff changeset
142 $PWD:/usr/src/app/tracker roundup-app:latest demo
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
143
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
144 This will create a ``demo`` subdirectory which is your tracker's
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
145 home. It will also print the URL for exploring your new tracker.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
146
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
147 .. caution::
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
148 Removing ``127.0.0.1:`` will make the tracker accessible from any
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
149 host with network access to your system. However the URL's created by
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
150 Roundup will still reference ``localhost`` unless you modify the
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
151 ``web`` url in the ``tracker`` section of ``config.ini`` and restart
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
152 the container [1]_.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
153
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
154 In the docker run command we used port 8917 for Roundup. When starting
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
155 Roundup, Docker may report a long error ending with: `bind: address
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
156 already in use.` This means that port 8917 is in use. When running
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
157 inside a Docker container, demo mode is unable to automatically find a
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
158 free port. You have to provide an unused port to ``-p``.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
159
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
160 To fix this, you can change the change the port mapping provided
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
161 with ``-p``. If you do this you **must** set the docker PORT_8080
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
162 environment variable on the command line to match. (If Docker
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
163 ever fixes https://github.com/moby/moby/issues/3778 we won't need
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
164 to worry about this.)
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
165
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
166 For example::
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
167
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
168 docker run --rm -e PORT_8080=9090 -p 127.0.0.1:9090:8080 -v \
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
169 --name roundup_demo $PWD:/usr/src/app/tracker \
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
170 rounduptracker/roundup:latest demo
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
171
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
172 will run Roundup on port 9090 and Roundup will generate the correct
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
173 URL.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
174
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
175 To shut down the tracker and get your shell back, use control-c. You
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
176 can remove the tracker using ``rm -f`` on the ``demo`` directory.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
177
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
178 Prerequisites
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
179 =============
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
180
8313
3614cd64f4c4 build: issue2551397: remove support for python 3.6
John Rouillard <rouilj@ieee.org>
parents: 8283
diff changeset
181 Roundup requires Python 3.7 or newer with a functioning anydbm
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
182 or sqlite module. The version installed by most vendors should work if
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
183 it meets the version requirements. If necessary, you can download the
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
184 latest version from https://www.python.org/. It is highly recommended
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
185 that users install the latest patch version of Python as these contain
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
186 many fixes to serious bugs.
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
187
7521
763807c584ed Use double backquotes not single.
John Rouillard <rouilj@ieee.org>
parents: 7520
diff changeset
188 Some variants of Linux will need an additional '``python-dev``' package
3421
0d9406d14186 MySQL now creates String columns using the TEXT column type
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
189 installed for Roundup installation to work. Debian and derivatives, are
0d9406d14186 MySQL now creates String columns using the TEXT column type
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
190 known to require this.
0d9406d14186 MySQL now creates String columns using the TEXT column type
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
191
3296
d5fa5a0b5216 some minimalist docs for Xapian
Richard Jones <richard@users.sourceforge.net>
parents: 3153
diff changeset
192 Optional Components
d5fa5a0b5216 some minimalist docs for Xapian
Richard Jones <richard@users.sourceforge.net>
parents: 3153
diff changeset
193 ===================
d5fa5a0b5216 some minimalist docs for Xapian
Richard Jones <richard@users.sourceforge.net>
parents: 3153
diff changeset
194
3297
8f7dc283bfa5 some more Xapian stuff (doc, test fixes)
Richard Jones <richard@users.sourceforge.net>
parents: 3296
diff changeset
195 You may optionally install and use:
3296
d5fa5a0b5216 some minimalist docs for Xapian
Richard Jones <richard@users.sourceforge.net>
parents: 3153
diff changeset
196
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
197 An RDBMS
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
198 Sqlite, MySQL and Postgresql are all supported by Roundup and will be
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
199 used if available. One of these is recommended if you are anticipating a
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
200 large user base (see `choosing your backend`_ below). Sqlite should
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
201 always be available.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
202
3623
bef78d81b79c added optional prerequisite: pytz
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3571
diff changeset
203 Timezone Definitions
3731
e6ef9abfe403 fix pytz requirement version and download URL for latest package
Richard Jones <richard@users.sourceforge.net>
parents: 3730
diff changeset
204 Full timezone support requires pytz_ module (version 2005i or later)
3730
8e3b881060b4 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 3729
diff changeset
205 which brings the `Olson tz database`_ into Python. If pytz_ is not
8e3b881060b4 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 3729
diff changeset
206 installed, timezones may be specified as numeric hour offsets only.
5140
7ea6bbf4286c update docs for windows installer: 32 bit version of python, must run nstaller as administrator, ned pywin32 to run as service. Encourage installation of pytz.
John Rouillard <rouilj@ieee.org>
parents: 5138
diff changeset
207 This is optional but strongly suggested.
5321
4566360871dc Raises python requirement to 2.7.
Bernhard Reiter <bernhard@intevation.de>
parents: 5300
diff changeset
208
3296
d5fa5a0b5216 some minimalist docs for Xapian
Richard Jones <richard@users.sourceforge.net>
parents: 3153
diff changeset
209 Xapian full-text indexer
d5fa5a0b5216 some minimalist docs for Xapian
Richard Jones <richard@users.sourceforge.net>
parents: 3153
diff changeset
210 The Xapian_ full-text indexer is also supported and will be used by
d5fa5a0b5216 some minimalist docs for Xapian
Richard Jones <richard@users.sourceforge.net>
parents: 3153
diff changeset
211 default if it is available. This is strongly recommended if you are
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3405
diff changeset
212 anticipating a large number of issues (> 5000).
3296
d5fa5a0b5216 some minimalist docs for Xapian
Richard Jones <richard@users.sourceforge.net>
parents: 3153
diff changeset
213
3297
8f7dc283bfa5 some more Xapian stuff (doc, test fixes)
Richard Jones <richard@users.sourceforge.net>
parents: 3296
diff changeset
214 You may install Xapian at any time, even after a tracker has been
8f7dc283bfa5 some more Xapian stuff (doc, test fixes)
Richard Jones <richard@users.sourceforge.net>
parents: 3296
diff changeset
215 installed and used. You will need to run the "roundup-admin reindex"
8f7dc283bfa5 some more Xapian stuff (doc, test fixes)
Richard Jones <richard@users.sourceforge.net>
parents: 3296
diff changeset
216 command if the tracker has existing data.
8f7dc283bfa5 some more Xapian stuff (doc, test fixes)
Richard Jones <richard@users.sourceforge.net>
parents: 3296
diff changeset
217
4378
477f2a47cbca - Indexer Xapian, made Xapian 1.2 compatible.
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents: 4355
diff changeset
218 Roundup requires Xapian 1.0.0 or newer.
3485
8d55b5db6365 xapian works, if you poke it enough
Richard Jones <richard@users.sourceforge.net>
parents: 3447
diff changeset
219
5108
67fad01d2009 issue2550653: xapian search, stemming is not working
John Rouillard <rouilj@ieee.org>
parents: 5096
diff changeset
220 Note that capitalization is not preserved by the Xapian search.
67fad01d2009 issue2550653: xapian search, stemming is not working
John Rouillard <rouilj@ieee.org>
parents: 5096
diff changeset
221 This is required to make the porter stemmer work so that searching
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
222 for ``silent`` also returns documents with the word ``silently``.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
223 Note that the current stemming implementation is designed for English.
5108
67fad01d2009 issue2550653: xapian search, stemming is not working
John Rouillard <rouilj@ieee.org>
parents: 5096
diff changeset
224
5096
e74c3611b138 - issue2550636, issue2550909: Added support for Whoosh indexer.
John Rouillard <rouilj@ieee.org>
parents: 5083
diff changeset
225 Whoosh full-text indexer
e74c3611b138 - issue2550636, issue2550909: Added support for Whoosh indexer.
John Rouillard <rouilj@ieee.org>
parents: 5083
diff changeset
226 The Whoosh_ full-text indexer is also supported and will be used by
e74c3611b138 - issue2550636, issue2550909: Added support for Whoosh indexer.
John Rouillard <rouilj@ieee.org>
parents: 5083
diff changeset
227 default if it is available (and Xapian is not installed). This is
e74c3611b138 - issue2550636, issue2550909: Added support for Whoosh indexer.
John Rouillard <rouilj@ieee.org>
parents: 5083
diff changeset
228 recommended if you are anticipating a large number of issues (> 5000).
6576
c55d56ab9ee9 Document whoosh implements fuzzy search.
John Rouillard <rouilj@ieee.org>
parents: 6555
diff changeset
229 It is also the only search backend that implements fuzzy search. It
c55d56ab9ee9 Document whoosh implements fuzzy search.
John Rouillard <rouilj@ieee.org>
parents: 6555
diff changeset
230 matches any word that has a 1 character difference from the search term.
5096
e74c3611b138 - issue2550636, issue2550909: Added support for Whoosh indexer.
John Rouillard <rouilj@ieee.org>
parents: 5083
diff changeset
231
e74c3611b138 - issue2550636, issue2550909: Added support for Whoosh indexer.
John Rouillard <rouilj@ieee.org>
parents: 5083
diff changeset
232 You may install Whoosh at any time, even after a tracker has been
e74c3611b138 - issue2550636, issue2550909: Added support for Whoosh indexer.
John Rouillard <rouilj@ieee.org>
parents: 5083
diff changeset
233 installed and used. You will need to run the "roundup-admin reindex"
e74c3611b138 - issue2550636, issue2550909: Added support for Whoosh indexer.
John Rouillard <rouilj@ieee.org>
parents: 5083
diff changeset
234 command if the tracker has existing data.
e74c3611b138 - issue2550636, issue2550909: Added support for Whoosh indexer.
John Rouillard <rouilj@ieee.org>
parents: 5083
diff changeset
235
e74c3611b138 - issue2550636, issue2550909: Added support for Whoosh indexer.
John Rouillard <rouilj@ieee.org>
parents: 5083
diff changeset
236 Roundup was tested with Whoosh 2.5.7, but earlier versions in the
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
237 2.0 series may work. Whoosh is a pure Python indexer so it is slower
5096
e74c3611b138 - issue2550636, issue2550909: Added support for Whoosh indexer.
John Rouillard <rouilj@ieee.org>
parents: 5083
diff changeset
238 than Xapian, but should be useful for moderately sized trackers.
e74c3611b138 - issue2550636, issue2550909: Added support for Whoosh indexer.
John Rouillard <rouilj@ieee.org>
parents: 5083
diff changeset
239 It uses the StandardAnalyzer which is suited for Western languages.
e74c3611b138 - issue2550636, issue2550909: Added support for Whoosh indexer.
John Rouillard <rouilj@ieee.org>
parents: 5083
diff changeset
240
3885
d4163100f4f3 add pyopenssl to optional components
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3830
diff changeset
241 pyopenssl
d4163100f4f3 add pyopenssl to optional components
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3830
diff changeset
242 If pyopenssl_ is installed the roundup-server can be configured
d4163100f4f3 add pyopenssl to optional components
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3830
diff changeset
243 to serve trackers over SSL. If you are going to serve roundup via
d4163100f4f3 add pyopenssl to optional components
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3830
diff changeset
244 proxy through a server with SSL support (e.g. apache) then this is
d4163100f4f3 add pyopenssl to optional components
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3830
diff changeset
245 unnecessary.
d4163100f4f3 add pyopenssl to optional components
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3830
diff changeset
246
5494
b7fa56ced601 use gpg module instead of pyme module for PGP encryption
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5486
diff changeset
247 gpg
b7fa56ced601 use gpg module instead of pyme module for PGP encryption
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5486
diff changeset
248 If gpg_ is installed you can configure the mail gateway to perform
3922
586679a314f7 role checking for PGP mail and docs
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3885
diff changeset
249 verification or decryption of incoming OpenPGP MIME messages. When
586679a314f7 role checking for PGP mail and docs
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3885
diff changeset
250 configured, you can require email to be cryptographically signed
8345
35fab0db52f5 docs(install): document how to install gpg 2.0
John Rouillard <rouilj@ieee.org>
parents: 8313
diff changeset
251 before roundup will allow it to make modifications to issues. (Note
35fab0db52f5 docs(install): document how to install gpg 2.0
John Rouillard <rouilj@ieee.org>
parents: 8313
diff changeset
252 with python 3.13 or newer on some platforms, you may need to install
35fab0db52f5 docs(install): document how to install gpg 2.0
John Rouillard <rouilj@ieee.org>
parents: 8313
diff changeset
253 version 2.0 of gpg from test.pypi.org. See the `gpg install
35fab0db52f5 docs(install): document how to install gpg 2.0
John Rouillard <rouilj@ieee.org>
parents: 8313
diff changeset
254 directions in the upgrading document`_.
35fab0db52f5 docs(install): document how to install gpg 2.0
John Rouillard <rouilj@ieee.org>
parents: 8313
diff changeset
255
8487
b09ef85f0da6 feat: add nanoid pkg trace_id gen and decorator for setting processName
John Rouillard <rouilj@ieee.org>
parents: 8461
diff changeset
256 nanoid
b09ef85f0da6 feat: add nanoid pkg trace_id gen and decorator for setting processName
John Rouillard <rouilj@ieee.org>
parents: 8461
diff changeset
257 If nanoid_ is installed, it is used to generate short unique
b09ef85f0da6 feat: add nanoid pkg trace_id gen and decorator for setting processName
John Rouillard <rouilj@ieee.org>
parents: 8461
diff changeset
258 ids to link all logging to a single request. If not installed,
b09ef85f0da6 feat: add nanoid pkg trace_id gen and decorator for setting processName
John Rouillard <rouilj@ieee.org>
parents: 8461
diff changeset
259 uuid4's from the standard library are used.
b09ef85f0da6 feat: add nanoid pkg trace_id gen and decorator for setting processName
John Rouillard <rouilj@ieee.org>
parents: 8461
diff changeset
260
5013
c1443d96ac94 jinja2: optional requirement added to installation.txt and link to wiki page.
Bernhard Reiter <bernhard@intevation.de>
parents: 4949
diff changeset
261 jinja2
c1443d96ac94 jinja2: optional requirement added to installation.txt and link to wiki page.
Bernhard Reiter <bernhard@intevation.de>
parents: 4949
diff changeset
262 To use the jinja2 template (may still be experimental, check out
c1443d96ac94 jinja2: optional requirement added to installation.txt and link to wiki page.
Bernhard Reiter <bernhard@intevation.de>
parents: 4949
diff changeset
263 its TEMPLATE-INFO.txt file) you need
c1443d96ac94 jinja2: optional requirement added to installation.txt and link to wiki page.
Bernhard Reiter <bernhard@intevation.de>
parents: 4949
diff changeset
264 to have the jinja2_ template engine installed.
c1443d96ac94 jinja2: optional requirement added to installation.txt and link to wiki page.
Bernhard Reiter <bernhard@intevation.de>
parents: 4949
diff changeset
265
8237
57325fea9982 issue2551116 - Replace xmlrpclib (xmlrpc.client) with defusedxml.
John Rouillard <rouilj@ieee.org>
parents: 8112
diff changeset
266 defusedxml
57325fea9982 issue2551116 - Replace xmlrpclib (xmlrpc.client) with defusedxml.
John Rouillard <rouilj@ieee.org>
parents: 8112
diff changeset
267 If you are going to enable and use the XMLRPC endpoint, you should
57325fea9982 issue2551116 - Replace xmlrpclib (xmlrpc.client) with defusedxml.
John Rouillard <rouilj@ieee.org>
parents: 8112
diff changeset
268 install the defusedxml_ module. It will still work with the default
57325fea9982 issue2551116 - Replace xmlrpclib (xmlrpc.client) with defusedxml.
John Rouillard <rouilj@ieee.org>
parents: 8112
diff changeset
269 xmlrpc standard library, but it will log a warning when used.
57325fea9982 issue2551116 - Replace xmlrpclib (xmlrpc.client) with defusedxml.
John Rouillard <rouilj@ieee.org>
parents: 8112
diff changeset
270
7863
bd126f890279 doc: add reference markers for markdown and docutils install.
John Rouillard <rouilj@ieee.org>
parents: 7724
diff changeset
271 .. _install/docutils:
bd126f890279 doc: add reference markers for markdown and docutils install.
John Rouillard <rouilj@ieee.org>
parents: 7724
diff changeset
272
6097
90a1470edbea added markdown rendering support using either markdown2 or markdown
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5940
diff changeset
273 docutils
6391
205bc1d27985 Added links for pyjwt, markdown libs, rearranged links.
John Rouillard <rouilj@ieee.org>
parents: 6390
diff changeset
274 To use ReStructuredText rendering you need to have the `docutils`_
6097
90a1470edbea added markdown rendering support using either markdown2 or markdown
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5940
diff changeset
275 package installed.
90a1470edbea added markdown rendering support using either markdown2 or markdown
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5940
diff changeset
276
7863
bd126f890279 doc: add reference markers for markdown and docutils install.
John Rouillard <rouilj@ieee.org>
parents: 7724
diff changeset
277 .. _install/markdown:
bd126f890279 doc: add reference markers for markdown and docutils install.
John Rouillard <rouilj@ieee.org>
parents: 7724
diff changeset
278
6099
55c56ceacb8e escape HTML tags in markdown content
Christof Meerwald <cmeerw@cmeerw.org>
parents: 6097
diff changeset
279 markdown, markdown2 or mistune
7969
ebcda75b7adb doc: clarify use of markdown and library versions.
John Rouillard <rouilj@ieee.org>
parents: 7921
diff changeset
280 To use markdown rendering (as supplied by the jinja2 template)
ebcda75b7adb doc: clarify use of markdown and library versions.
John Rouillard <rouilj@ieee.org>
parents: 7921
diff changeset
281 you need to have the markdown_,
ebcda75b7adb doc: clarify use of markdown and library versions.
John Rouillard <rouilj@ieee.org>
parents: 7921
diff changeset
282 markdown2_ (2.4.9 known to be broken, 2.3.3, 2.4.10+ known to
ebcda75b7adb doc: clarify use of markdown and library versions.
John Rouillard <rouilj@ieee.org>
parents: 7921
diff changeset
283 work), or mistune_ (v0.8.4 tested; python3 only) package installed.
6097
90a1470edbea added markdown rendering support using either markdown2 or markdown
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5940
diff changeset
284
6458
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
285 zstd, brotli
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
286 To have roundup compress the returned data using one of these
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
287 algorithms, you can install one or more of zstd_ or brotli_.
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
288 Roundup's responses can always be compressed with gzip from the
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
289 Python standard library. Also nginx and various wsgi server can
7453
feb970243b97 Clarify docker run commands and link to admin manual section
John Rouillard <rouilj@ieee.org>
parents: 7441
diff changeset
290 compress the response from Roundup as they transmit/proxy it to the
6458
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
291 client.
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
292
6814
3f60a71b0812 Summary: Support selecion session/otk data store. Add redis as data store.
John Rouillard <rouilj@ieee.org>
parents: 6797
diff changeset
293 redis
3f60a71b0812 Summary: Support selecion session/otk data store. Add redis as data store.
John Rouillard <rouilj@ieee.org>
parents: 6797
diff changeset
294 Storing ephemeral data: session keys, CSRF tokens etc. can be
3f60a71b0812 Summary: Support selecion session/otk data store. Add redis as data store.
John Rouillard <rouilj@ieee.org>
parents: 6797
diff changeset
295 performance bottleneck. You can choose to deploy a Redis_ database
3f60a71b0812 Summary: Support selecion session/otk data store. Add redis as data store.
John Rouillard <rouilj@ieee.org>
parents: 6797
diff changeset
296 using the redis-py_ pypi package. See the section on
3f60a71b0812 Summary: Support selecion session/otk data store. Add redis as data store.
John Rouillard <rouilj@ieee.org>
parents: 6797
diff changeset
297 `Using Redis for Session Databases`_ in the `administration
3f60a71b0812 Summary: Support selecion session/otk data store. Add redis as data store.
John Rouillard <rouilj@ieee.org>
parents: 6797
diff changeset
298 guide`_ for details.
3f60a71b0812 Summary: Support selecion session/otk data store. Add redis as data store.
John Rouillard <rouilj@ieee.org>
parents: 6797
diff changeset
299
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
300 pyjwt
8080
d1c29284ccd9 feat: issue2551287 - roundup-gettext extracts strings from detectors/extensions
John Rouillard <rouilj@ieee.org>
parents: 8071
diff changeset
301 To use JWT (JSON web tokens) for login (experimental), install
d1c29284ccd9 feat: issue2551287 - roundup-gettext extracts strings from detectors/extensions
John Rouillard <rouilj@ieee.org>
parents: 8071
diff changeset
302 `pyjwt`_ (v1.7.1, v2.0.1 tested). If you don't have it
d1c29284ccd9 feat: issue2551287 - roundup-gettext extracts strings from detectors/extensions
John Rouillard <rouilj@ieee.org>
parents: 8071
diff changeset
303 installed, JWT's are not supported.
d1c29284ccd9 feat: issue2551287 - roundup-gettext extracts strings from detectors/extensions
John Rouillard <rouilj@ieee.org>
parents: 8071
diff changeset
304
d1c29284ccd9 feat: issue2551287 - roundup-gettext extracts strings from detectors/extensions
John Rouillard <rouilj@ieee.org>
parents: 8071
diff changeset
305 polib
d1c29284ccd9 feat: issue2551287 - roundup-gettext extracts strings from detectors/extensions
John Rouillard <rouilj@ieee.org>
parents: 8071
diff changeset
306 Roundup includes translations in various languages. To extract
d1c29284ccd9 feat: issue2551287 - roundup-gettext extracts strings from detectors/extensions
John Rouillard <rouilj@ieee.org>
parents: 8071
diff changeset
307 strings designated for translation from your tracker's HTML
d1c29284ccd9 feat: issue2551287 - roundup-gettext extracts strings from detectors/extensions
John Rouillard <rouilj@ieee.org>
parents: 8071
diff changeset
308 templates, you can utilize `roundup-gettext`. However, if you
d1c29284ccd9 feat: issue2551287 - roundup-gettext extracts strings from detectors/extensions
John Rouillard <rouilj@ieee.org>
parents: 8071
diff changeset
309 wish to extract translatable strings from the Python code in
d1c29284ccd9 feat: issue2551287 - roundup-gettext extracts strings from detectors/extensions
John Rouillard <rouilj@ieee.org>
parents: 8071
diff changeset
310 tracker's detectors or extensions directories using
d1c29284ccd9 feat: issue2551287 - roundup-gettext extracts strings from detectors/extensions
John Rouillard <rouilj@ieee.org>
parents: 8071
diff changeset
311 roundup-gettext, you must install polib_. See the `developer's
d1c29284ccd9 feat: issue2551287 - roundup-gettext extracts strings from detectors/extensions
John Rouillard <rouilj@ieee.org>
parents: 8071
diff changeset
312 guide`_ for details on translating your tracker.
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
313
7609
044dea25c1e2 docs: mention pywin32 in label
John Rouillard <rouilj@ieee.org>
parents: 7608
diff changeset
314 pywin32 - Windows Service
4686
4e740f02e165 Remove pywin32 installation dependency by porting portalocker.py to ctypes.
anatoly techtonik <techtonik@gmail.com>
parents: 4672
diff changeset
315 You can run Roundup as a Windows service if pywin32_ is installed.
5140
7ea6bbf4286c update docs for windows installer: 32 bit version of python, must run nstaller as administrator, ned pywin32 to run as service. Encourage installation of pytz.
John Rouillard <rouilj@ieee.org>
parents: 5138
diff changeset
316 Otherwise it must be started manually.
4686
4e740f02e165 Remove pywin32 installation dependency by porting portalocker.py to ctypes.
anatoly techtonik <techtonik@gmail.com>
parents: 4672
diff changeset
317
7608
cdc7490f510e docs: add mention of pyreadline3 under windows
John Rouillard <rouilj@ieee.org>
parents: 7603
diff changeset
318 pyreadline3
cdc7490f510e docs: add mention of pyreadline3 under windows
John Rouillard <rouilj@ieee.org>
parents: 7603
diff changeset
319 When running roundup-admin on windows, installing pyreadline3_ will
cdc7490f510e docs: add mention of pyreadline3 under windows
John Rouillard <rouilj@ieee.org>
parents: 7603
diff changeset
320 allow history and editing on the command line.
cdc7490f510e docs: add mention of pyreadline3 under windows
John Rouillard <rouilj@ieee.org>
parents: 7603
diff changeset
321
7065
48da482d7d93 reference requests library for imap_oauth in roundup-mailgw
John Rouillard <rouilj@ieee.org>
parents: 7042
diff changeset
322 requests
48da482d7d93 reference requests library for imap_oauth in roundup-mailgw
John Rouillard <rouilj@ieee.org>
parents: 7042
diff changeset
323 If you are using OAuth authentication with the roundup-mailgw
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
324 mail gateway you must install the requests_ library.
7065
48da482d7d93 reference requests library for imap_oauth in roundup-mailgw
John Rouillard <rouilj@ieee.org>
parents: 7042
diff changeset
325
6814
3f60a71b0812 Summary: Support selecion session/otk data store. Add redis as data store.
John Rouillard <rouilj@ieee.org>
parents: 6797
diff changeset
326 .. _Using Redis for Session Databases:
3f60a71b0812 Summary: Support selecion session/otk data store. Add redis as data store.
John Rouillard <rouilj@ieee.org>
parents: 6797
diff changeset
327 admin_guide.html#using-redis-for-session-databases
3f60a71b0812 Summary: Support selecion session/otk data store. Add redis as data store.
John Rouillard <rouilj@ieee.org>
parents: 6797
diff changeset
328
8345
35fab0db52f5 docs(install): document how to install gpg 2.0
John Rouillard <rouilj@ieee.org>
parents: 8313
diff changeset
329 .. _gpg install directions in the upgrading document:
35fab0db52f5 docs(install): document how to install gpg 2.0
John Rouillard <rouilj@ieee.org>
parents: 8313
diff changeset
330 upgrading.html#directions-for-installing-gpg
35fab0db52f5 docs(install): document how to install gpg 2.0
John Rouillard <rouilj@ieee.org>
parents: 8313
diff changeset
331
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
332 Installing Roundup
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
333 ==================
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
334
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
335 To get a production installation running will take 15-30 minutes. If
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
336 you want to spend less than 5 minutes to test Roundup without
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
337 installing it, see `For The Really Impatient`_.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
338
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
339 .. note:: Some systems, such as Gentoo and NetBSD, already have
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
340 Roundup installed. Try running the command "roundup-admin
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
341 -v". If it runs and reports the current version, you may
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
342 skip the `Standard installation`_ below and go straight to
7301
d5442d781a09 update doc on check for pre-installed roundup
John Rouillard <rouilj@ieee.org>
parents: 7137
diff changeset
343 `configuring your first tracker`_. However it may be an old
d5442d781a09 update doc on check for pre-installed roundup
John Rouillard <rouilj@ieee.org>
parents: 7137
diff changeset
344 version. If so you should probably install it in a virtual
d5442d781a09 update doc on check for pre-installed roundup
John Rouillard <rouilj@ieee.org>
parents: 7137
diff changeset
345 environment from the Roundup web site or pypi.
2742
8ac87d4092e2 more install doc tweaks
Richard Jones <richard@users.sourceforge.net>
parents: 2741
diff changeset
346
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
347 If Roundup is not installed on your system, or needs to be updated,
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
348 there are multiple ways to install Roundup.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
349
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
350 * `Standard installation`_ using pip in a Virtual Environment is the
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
351 recommended standard.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
352 * `Installing from downloaded source`_ allows more control over how
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
353 things are installed (including overwriting a vendor install). But
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
354 it also increases complexity as well.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
355 * Use a prebuilt docker container from
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
356 ``rounduptracker/roundup:latest`` and follow the steps in
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
357 `Running Your Container`_.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
358 * Install in a docker container by downloading the source
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
359 and following the steps in `Docker Support`_.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
360
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
361 There are several steps to get Roundup serving a tracker:
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
362
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
363 1. Install using one of the methods listed above.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
364 2. Configure your tracker following `configuring your first tracker`_
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
365 for all install methods.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
366 3. Optionally `configure a web interface`_.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
367 4. Optionally `configure an email interface`_.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
368 5. Follow `UNIX environment steps`_ to restrict local access to
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
369 Roundup if you're installing on a shared UNIX system.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
370
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
371 For information about what Roundup installs, see the
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
372 `What does Roundup install`_ section in the `administration guide`_.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
373
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
374
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
375 Standard Installation
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
376 ----------------------
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
377
6739
00fe67eb8a91 Update locations templates and locale files are stored
John Rouillard <rouilj@ieee.org>
parents: 6738
diff changeset
378 Installation of Roundup using Python3 in a virtual environment is
7303
9bd9d06e2f2c Misc doc fixes.
John Rouillard <rouilj@ieee.org>
parents: 7302
diff changeset
379 recommended. Use::
6739
00fe67eb8a91 Update locations templates and locale files are stored
John Rouillard <rouilj@ieee.org>
parents: 6738
diff changeset
380
00fe67eb8a91 Update locations templates and locale files are stored
John Rouillard <rouilj@ieee.org>
parents: 6738
diff changeset
381 python3 -m venv /path/to/environment/roundup
00fe67eb8a91 Update locations templates and locale files are stored
John Rouillard <rouilj@ieee.org>
parents: 6738
diff changeset
382
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
383 Activate the Python environment (assuming a Bourne like shell)
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
384 using::
6739
00fe67eb8a91 Update locations templates and locale files are stored
John Rouillard <rouilj@ieee.org>
parents: 6738
diff changeset
385
00fe67eb8a91 Update locations templates and locale files are stored
John Rouillard <rouilj@ieee.org>
parents: 6738
diff changeset
386 . /path/to/environment/roundup/bin/activate
00fe67eb8a91 Update locations templates and locale files are stored
John Rouillard <rouilj@ieee.org>
parents: 6738
diff changeset
387
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
388 To install the released Roundup core code into your Python tree and
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
389 Roundup scripts into ``/path/to/environment/roundup/usr/bin`` run::
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
390
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
391 python3 -m pip install roundup
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
392
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
393 If everything went well, you should now be able to run::
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
394
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
395 roundup-admin help
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
396
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
397 and see the help text.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
398
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
399 If you want to run Roundup commands in the future without
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
400 activating the virtual environment, just call the commands using the
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
401 full path. For example::
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
402
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
403 /path/to/environment/roundup/usr/bin/roundup-admin
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
404
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
405 You can use the command ``deactivate`` to return to the normal
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
406 Python environment. However, for now continue with
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
407 `configuring your first tracker`_.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
408
7374
72de757edf78 issue2551220 - In installation.txt clarify source directory.
John Rouillard <rouilj@ieee.org>
parents: 7354
diff changeset
409 .. _downloaded and unpacked the source:
72de757edf78 issue2551220 - In installation.txt clarify source directory.
John Rouillard <rouilj@ieee.org>
parents: 7354
diff changeset
410
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
411 Installing from downloaded source
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
412 ---------------------------------
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
413
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
414 In general you should be installing from a released Roundup version
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
415 into a virtual environment.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
416
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
417 .. _current development version: ../code.html
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
418
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
419 If you are installing a `current development version`_ or are a
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
420 developer or are an expert you can use the manual installation method
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
421 from a source install. From the unpacked source distribution, run::
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
422
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
423 sudo python3 setup.py install
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
424
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
425 which will put the Roundup core code into your systems Python tree and
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
426 the command scripts into ``/usr/bin``
1590
198dbefc1d5a more installation doc cleanups
Richard Jones <richard@users.sourceforge.net>
parents: 1588
diff changeset
427
198dbefc1d5a more installation doc cleanups
Richard Jones <richard@users.sourceforge.net>
parents: 1588
diff changeset
428 If you would like to place the Roundup scripts in a directory other
3524
ed82c2c6ee34 fix doc
Richard Jones <richard@users.sourceforge.net>
parents: 3523
diff changeset
429 than ``/usr/bin``, then specify the preferred location with
3949
29dfb873b32e Small documentation cleanup
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3935
diff changeset
430 ``--install-scripts``. For example, to install them in
1590
198dbefc1d5a more installation doc cleanups
Richard Jones <richard@users.sourceforge.net>
parents: 1588
diff changeset
431 ``/opt/roundup/bin``::
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
432
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
433 sudo python setup.py install --install-scripts=/opt/roundup/bin
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
434
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
435 You can also use the ``--prefix`` option to install roundup into a
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
436 completely different base directory. If you choose to do this, you
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
437 will have to change Python's search path (sys.path) yourself.
1590
198dbefc1d5a more installation doc cleanups
Richard Jones <richard@users.sourceforge.net>
parents: 1588
diff changeset
438
198dbefc1d5a more installation doc cleanups
Richard Jones <richard@users.sourceforge.net>
parents: 1588
diff changeset
439 Configuring your first tracker
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
440 ==============================
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
441
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
442 Make sure the ``roundup-admin`` script location is on your ``PATH``
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
443 evironment variable. This is done automatically when you activate a
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
444 virtual environment. You can also specify the full path to the command
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
445 in the following steps.
1590
198dbefc1d5a more installation doc cleanups
Richard Jones <richard@users.sourceforge.net>
parents: 1588
diff changeset
446
198dbefc1d5a more installation doc cleanups
Richard Jones <richard@users.sourceforge.net>
parents: 1588
diff changeset
447 1. To create a Roundup tracker (necessary to do before you can
1576
80519db85eac More tweaks to the licensing to make the Debian folks happy :)
Richard Jones <richard@users.sourceforge.net>
parents: 1574
diff changeset
448 use the software in any real fashion), you need to set up a "tracker
80519db85eac More tweaks to the licensing to make the Debian folks happy :)
Richard Jones <richard@users.sourceforge.net>
parents: 1574
diff changeset
449 home":
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
450
1089
43ab730ee194 instance -> tracker, node -> item
Richard Jones <richard@users.sourceforge.net>
parents: 1078
diff changeset
451 a. (Optional) If you intend to keep your roundup trackers
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
452 under one top level directory which does not exist yet,
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
453 you should create that directory now. Example::
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
454
1089
43ab730ee194 instance -> tracker, node -> item
Richard Jones <richard@users.sourceforge.net>
parents: 1078
diff changeset
455 mkdir /opt/roundup/trackers
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
456
6174
5522c950a2e4 Add indexing for roundup-admin references.
John Rouillard <rouilj@ieee.org>
parents: 6168
diff changeset
457 .. index:: roundup-admin; install subcommand
5522c950a2e4 Add indexing for roundup-admin references.
John Rouillard <rouilj@ieee.org>
parents: 6168
diff changeset
458
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
459 b. Install a new tracker with the command ``roundup-admin install``.
1221
778297033003 cleanup of install docco
Richard Jones <richard@users.sourceforge.net>
parents: 1218
diff changeset
460 You will be asked a series of questions. Descriptions of the provided
778297033003 cleanup of install docco
Richard Jones <richard@users.sourceforge.net>
parents: 1218
diff changeset
461 templates can be found in `choosing your template`_ below. Descriptions
778297033003 cleanup of install docco
Richard Jones <richard@users.sourceforge.net>
parents: 1218
diff changeset
462 of the available backends can be found in `choosing your backend`_
778297033003 cleanup of install docco
Richard Jones <richard@users.sourceforge.net>
parents: 1218
diff changeset
463 below. The questions will be something like (you may have more
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
464 templates or backends available)::
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
465
1089
43ab730ee194 instance -> tracker, node -> item
Richard Jones <richard@users.sourceforge.net>
parents: 1078
diff changeset
466 Enter tracker home: /opt/roundup/trackers/support
6766
c27fc7f499c7 Update install with all current templates and mandatory backends.
John Rouillard <rouilj@ieee.org>
parents: 6739
diff changeset
467 Templates: minimal, jinja2, classic, responsive, devel
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
468 Select template [classic]: classic
6766
c27fc7f499c7 Update install with all current templates and mandatory backends.
John Rouillard <rouilj@ieee.org>
parents: 6739
diff changeset
469 Back ends: anydbm, sqlite
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
470 Select backend [anydbm]: anydbm
738
7e093cbaaa98 split instance initialisation into two steps...
Richard Jones <richard@users.sourceforge.net>
parents: 729
diff changeset
471
2818
2317e43609cb remove bsddb; suggest using sqlite better than metakit
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2742
diff changeset
472 Note: "Back ends" selection list depends on availability of
2317e43609cb remove bsddb; suggest using sqlite better than metakit
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2742
diff changeset
473 third-party database modules. Standard python distribution
6766
c27fc7f499c7 Update install with all current templates and mandatory backends.
John Rouillard <rouilj@ieee.org>
parents: 6739
diff changeset
474 includes anydbm and sqlite module only.
2818
2317e43609cb remove bsddb; suggest using sqlite better than metakit
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2742
diff changeset
475
7303
9bd9d06e2f2c Misc doc fixes.
John Rouillard <rouilj@ieee.org>
parents: 7302
diff changeset
476 The "support" part of the tracker home can be anything you want - it
9bd9d06e2f2c Misc doc fixes.
John Rouillard <rouilj@ieee.org>
parents: 7302
diff changeset
477 is the directory where the tracker information will be stored.
1571
8b5ff6ca0674 more doc fixes
Richard Jones <richard@users.sourceforge.net>
parents: 1560
diff changeset
478
1089
43ab730ee194 instance -> tracker, node -> item
Richard Jones <richard@users.sourceforge.net>
parents: 1078
diff changeset
479 You will now be directed to edit the tracker configuration and
7303
9bd9d06e2f2c Misc doc fixes.
John Rouillard <rouilj@ieee.org>
parents: 7302
diff changeset
480 initial schema. At a minimum, you must set "tracker :: web"
9bd9d06e2f2c Misc doc fixes.
John Rouillard <rouilj@ieee.org>
parents: 7302
diff changeset
481 (that's the "web" option in the "tracker" section),
6989
b5f8b85351a9 clarify required config.ini installation changes vs optional.
John Rouillard <rouilj@ieee.org>
parents: 6988
diff changeset
482 "mail :: host", and "mail :: domain". You should also
7303
9bd9d06e2f2c Misc doc fixes.
John Rouillard <rouilj@ieee.org>
parents: 7302
diff changeset
483 set "main :: admin_email" to your local admin address to get email
6989
b5f8b85351a9 clarify required config.ini installation changes vs optional.
John Rouillard <rouilj@ieee.org>
parents: 6988
diff changeset
484 on unusual occurances. If you get stuck,
3303
520eef0e0e91 fix installation docs referring to old-style configuration variables
Richard Jones <richard@users.sourceforge.net>
parents: 3297
diff changeset
485 and get configuration file errors, then see the `tracker
7354
692242b3effd initial pass to change references to reference doc where needed.
John Rouillard <rouilj@ieee.org>
parents: 7350
diff changeset
486 configuration`_ section of the `reference documentation`_.
1245
d8c98af869ff merge from maint-0-5
Richard Jones <richard@users.sourceforge.net>
parents: 1244
diff changeset
487
1574
67af854f4c33 more installation hintage
Richard Jones <richard@users.sourceforge.net>
parents: 1571
diff changeset
488 If you just want to get set up to test things quickly (and follow
67af854f4c33 more installation hintage
Richard Jones <richard@users.sourceforge.net>
parents: 1571
diff changeset
489 the instructions in step 3 below), you can even just set the
3303
520eef0e0e91 fix installation docs referring to old-style configuration variables
Richard Jones <richard@users.sourceforge.net>
parents: 3297
diff changeset
490 "tracker :: web" variable to::
1244
8dd4f736370b merge from maintenance branch
Richard Jones <richard@users.sourceforge.net>
parents: 1240
diff changeset
491
3303
520eef0e0e91 fix installation docs referring to old-style configuration variables
Richard Jones <richard@users.sourceforge.net>
parents: 3297
diff changeset
492 web = http://localhost:8080/support/
1244
8dd4f736370b merge from maintenance branch
Richard Jones <richard@users.sourceforge.net>
parents: 1240
diff changeset
493
1310
ff7b08d9ceb5 more URL trailing-/ requirements
Richard Jones <richard@users.sourceforge.net>
parents: 1300
diff changeset
494 The URL *must* end in a '/', or your web interface *will not work*.
7354
692242b3effd initial pass to change references to reference doc where needed.
John Rouillard <rouilj@ieee.org>
parents: 7350
diff changeset
495 See the `Roundup reference`_ for details on configuration and schema
2409
Richard Jones <richard@users.sourceforge.net>
parents: 2401
diff changeset
496 changes. You may change any of the configuration after
1310
ff7b08d9ceb5 more URL trailing-/ requirements
Richard Jones <richard@users.sourceforge.net>
parents: 1300
diff changeset
497 you've initialised the tracker - it's just better to have valid values
ff7b08d9ceb5 more URL trailing-/ requirements
Richard Jones <richard@users.sourceforge.net>
parents: 1300
diff changeset
498 for this stuff now.
738
7e093cbaaa98 split instance initialisation into two steps...
Richard Jones <richard@users.sourceforge.net>
parents: 729
diff changeset
499
6174
5522c950a2e4 Add indexing for roundup-admin references.
John Rouillard <rouilj@ieee.org>
parents: 6168
diff changeset
500 .. index:: roundup-admin; initialise subcommand
5522c950a2e4 Add indexing for roundup-admin references.
John Rouillard <rouilj@ieee.org>
parents: 6168
diff changeset
501
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
502 c. Initialise the tracker database with ``roundup-admin initialise``.
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
503 You will need to supply an admin password at this step. You will be
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
504 prompted::
738
7e093cbaaa98 split instance initialisation into two steps...
Richard Jones <richard@users.sourceforge.net>
parents: 729
diff changeset
505
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
506 Admin Password:
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
507 Confirm:
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
508
7719
3071db43bfb6 feat: issue2550852 - support using a specified PostgreSQL db schema
John Rouillard <rouilj@ieee.org>
parents: 7712
diff changeset
509 Note: running this command will *destroy any existing data in
3071db43bfb6 feat: issue2550852 - support using a specified PostgreSQL db schema
John Rouillard <rouilj@ieee.org>
parents: 7712
diff changeset
510 the database*. In the case of MySQL and PostgreSQL, any existing
3071db43bfb6 feat: issue2550852 - support using a specified PostgreSQL db schema
John Rouillard <rouilj@ieee.org>
parents: 7712
diff changeset
511 database (or optionally database schema for PostgreSQL) will be
3071db43bfb6 feat: issue2550852 - support using a specified PostgreSQL db schema
John Rouillard <rouilj@ieee.org>
parents: 7712
diff changeset
512 dropped and re-created.
2401
a405124c3847 doc fixes
Richard Jones <richard@users.sourceforge.net>
parents: 2258
diff changeset
513
4792
1a0cf0345465 issue2550789 document how to initialize a tracker without exposing the admin password
John Rouillard <rouilj@ieee.org>
parents: 4688
diff changeset
514 Once this is done, the tracker has been created. See the note in
7453
feb970243b97 Clarify docker run commands and link to admin manual section
John Rouillard <rouilj@ieee.org>
parents: 7441
diff changeset
515 the `administration guide`_ on how to :ref:`initialise a
feb970243b97 Clarify docker run commands and link to admin manual section
John Rouillard <rouilj@ieee.org>
parents: 7441
diff changeset
516 tracker without being prompted for the password <initpw>` or
feb970243b97 Clarify docker run commands and link to admin manual section
John Rouillard <rouilj@ieee.org>
parents: 7441
diff changeset
517 exposing the password on the command line.
738
7e093cbaaa98 split instance initialisation into two steps...
Richard Jones <richard@users.sourceforge.net>
parents: 729
diff changeset
518
1590
198dbefc1d5a more installation doc cleanups
Richard Jones <richard@users.sourceforge.net>
parents: 1588
diff changeset
519 2. At this point, your tracker is set up, but doesn't have a nice user
1244
8dd4f736370b merge from maintenance branch
Richard Jones <richard@users.sourceforge.net>
parents: 1240
diff changeset
520 interface. To set that up, we need to `configure a web interface`_ and
1316
dd43853684d4 don't undersell the roundup-server
Richard Jones <richard@users.sourceforge.net>
parents: 1310
diff changeset
521 optionally `configure an email interface`_. If you want to try your
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
522 new tracker out, assuming the ``web`` setting in the
7438
116ea5ce06ab issue2551269: Add warning abut Python 2 support lifetime
John Rouillard <rouilj@ieee.org>
parents: 7399
diff changeset
523 ``[tracker]`` [4]_ section of config.ini is set to
1316
dd43853684d4 don't undersell the roundup-server
Richard Jones <richard@users.sourceforge.net>
parents: 1310
diff changeset
524 ``'http://localhost:8080/support/'``, run::
1244
8dd4f736370b merge from maintenance branch
Richard Jones <richard@users.sourceforge.net>
parents: 1240
diff changeset
525
1574
67af854f4c33 more installation hintage
Richard Jones <richard@users.sourceforge.net>
parents: 1571
diff changeset
526 roundup-server support=/opt/roundup/trackers/support
1244
8dd4f736370b merge from maintenance branch
Richard Jones <richard@users.sourceforge.net>
parents: 1240
diff changeset
527
8dd4f736370b merge from maintenance branch
Richard Jones <richard@users.sourceforge.net>
parents: 1240
diff changeset
528 then direct your web browser at:
8dd4f736370b merge from maintenance branch
Richard Jones <richard@users.sourceforge.net>
parents: 1240
diff changeset
529
1845
3c6dd167a744 Fix typo in server address [SF#822967].
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1839
diff changeset
530 http://localhost:8080/support/
1244
8dd4f736370b merge from maintenance branch
Richard Jones <richard@users.sourceforge.net>
parents: 1240
diff changeset
531
8dd4f736370b merge from maintenance branch
Richard Jones <richard@users.sourceforge.net>
parents: 1240
diff changeset
532 and you should see the tracker interface.
1049
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
533
5138
c54720396f40 issue2550882. Reported by Karl-Philipp Richter. Fixed
John Rouillard <rouilj@ieee.org>
parents: 5108
diff changeset
534 To run your tracker on some interface other than 127.0.0.1 and port
7303
9bd9d06e2f2c Misc doc fixes.
John Rouillard <rouilj@ieee.org>
parents: 7302
diff changeset
535 8080 (make sure you change the "tracker :: web" option to match) use::
1049
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
536
5138
c54720396f40 issue2550882. Reported by Karl-Philipp Richter. Fixed
John Rouillard <rouilj@ieee.org>
parents: 5108
diff changeset
537 roundup-server -p 1080 -n 0.0.0.0 support=/opt/roundup/trackers/support
c54720396f40 issue2550882. Reported by Karl-Philipp Richter. Fixed
John Rouillard <rouilj@ieee.org>
parents: 5108
diff changeset
538
c54720396f40 issue2550882. Reported by Karl-Philipp Richter. Fixed
John Rouillard <rouilj@ieee.org>
parents: 5108
diff changeset
539 to run the server at port 1080 and bind to all ip addresses on your system.
7303
9bd9d06e2f2c Misc doc fixes.
John Rouillard <rouilj@ieee.org>
parents: 7302
diff changeset
540 Then direct your web browser to ``http://your_host_name:1080/support/``.
5321
4566360871dc Raises python requirement to 2.7.
Bernhard Reiter <bernhard@intevation.de>
parents: 5300
diff changeset
541
7438
116ea5ce06ab issue2551269: Add warning abut Python 2 support lifetime
John Rouillard <rouilj@ieee.org>
parents: 7399
diff changeset
542 .. [4] The rest of the documentation uses the abbreviated form "tracker ::
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
543 web" for specifying a section and setting.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
544
1221
778297033003 cleanup of install docco
Richard Jones <richard@users.sourceforge.net>
parents: 1218
diff changeset
545 Choosing Your Template
778297033003 cleanup of install docco
Richard Jones <richard@users.sourceforge.net>
parents: 1218
diff changeset
546 ----------------------
778297033003 cleanup of install docco
Richard Jones <richard@users.sourceforge.net>
parents: 1218
diff changeset
547
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
548 Roundup ships with 5 templates. A description of each follows. When
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
549 Roundup is installed, you can also get a description of available
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
550 templates using ``roundup-admin templates``. You can use this to view
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
551 additional templates that you create or download.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
552
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
553 .. _classic tracker:
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
554
1221
778297033003 cleanup of install docco
Richard Jones <richard@users.sourceforge.net>
parents: 1218
diff changeset
555 Classic Template
778297033003 cleanup of install docco
Richard Jones <richard@users.sourceforge.net>
parents: 1218
diff changeset
556 ~~~~~~~~~~~~~~~~
778297033003 cleanup of install docco
Richard Jones <richard@users.sourceforge.net>
parents: 1218
diff changeset
557
7302
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
558 The classic template is the one defined in the `Roundup
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
559 Specification`_. It holds issues which have priorities and
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
560 statuses. Each issue may also have a set of messages which are
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
561 disseminated to the issue's list of nosy users.
1221
778297033003 cleanup of install docco
Richard Jones <richard@users.sourceforge.net>
parents: 1218
diff changeset
562
1227
92d8e1aad2e9 added mention of the new "minimal" template...
Richard Jones <richard@users.sourceforge.net>
parents: 1221
diff changeset
563 Minimal Template
92d8e1aad2e9 added mention of the new "minimal" template...
Richard Jones <richard@users.sourceforge.net>
parents: 1221
diff changeset
564 ~~~~~~~~~~~~~~~~
92d8e1aad2e9 added mention of the new "minimal" template...
Richard Jones <richard@users.sourceforge.net>
parents: 1221
diff changeset
565
92d8e1aad2e9 added mention of the new "minimal" template...
Richard Jones <richard@users.sourceforge.net>
parents: 1221
diff changeset
566 The minimal template has the minimum setup required for a tracker
7302
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
567 installation. That is, it has the configuration files, defines a user
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
568 database and the basic HTML interface to that. It's a completely clean
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
569 slate for you to create your tracker on.
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
570
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
571 Other Templates
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
572 ~~~~~~~~~~~~~~~
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
573
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
574 There are three other templates distributed with Roundup:
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
575
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
576 devel
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
577 This is a generic issue tracker that may be used to track bugs,
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
578 feature requests, project issues or any number of other types of
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
579 issues. Most users of Roundup will find that this template suits
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
580 them, with perhaps a few customisations.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
581
7302
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
582 responsive
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
583 This issue tracker uses the same schema as devel. The difference
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
584 between devel and responsive templates is the use of Twitter
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
585 bootstrap (https://github.com/twbs/bootstrap) in templates and
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
586 HTML5 markup. Make sure the "static_files" setting in your
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
587 config.ini of your instance is set to the directory where the
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
588 static files live (the subdirectory "static" in the default of the
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
589 template).
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
590
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
591 jinja2
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
592 This is a generic issue tracker based on classic schema. It uses
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
593 Jinja2 for templating and Twitter bootstrap for responsive markup.
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
594 You will need jinja and gettext for this to work. See the wiki
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
595 page https://wiki.roundup-tracker.org/Jinja2 for updates
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
596 between releases.
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
597
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
598 Also other people have listed their trackers for different needs at:
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
599 https://wiki.roundup-tracker.org/TrackerTemplates.
1227
92d8e1aad2e9 added mention of the new "minimal" template...
Richard Jones <richard@users.sourceforge.net>
parents: 1221
diff changeset
600
6163
c2fd254c9257 Doc updates/indexing.
John Rouillard <rouilj@ieee.org>
parents: 6099
diff changeset
601 .. index:: database; choosing your backend
1221
778297033003 cleanup of install docco
Richard Jones <richard@users.sourceforge.net>
parents: 1218
diff changeset
602
778297033003 cleanup of install docco
Richard Jones <richard@users.sourceforge.net>
parents: 1218
diff changeset
603 Choosing Your Backend
778297033003 cleanup of install docco
Richard Jones <richard@users.sourceforge.net>
parents: 1218
diff changeset
604 ---------------------
778297033003 cleanup of install docco
Richard Jones <richard@users.sourceforge.net>
parents: 1218
diff changeset
605
778297033003 cleanup of install docco
Richard Jones <richard@users.sourceforge.net>
parents: 1218
diff changeset
606 The actual storage of Roundup tracker information is handled by backends.
7523
f2c588128202 Clarify support for basic FTS all backends; augment native FTS desc.
John Rouillard <rouilj@ieee.org>
parents: 7522
diff changeset
607
f2c588128202 Clarify support for basic FTS all backends; augment native FTS desc.
John Rouillard <rouilj@ieee.org>
parents: 7522
diff changeset
608 Roundup supports basic full text search (FTS) for all backends. Some
f2c588128202 Clarify support for basic FTS all backends; augment native FTS desc.
John Rouillard <rouilj@ieee.org>
parents: 7522
diff changeset
609 backends support a faster native FTS. Also Roundup supports using
f2c588128202 Clarify support for basic FTS all backends; augment native FTS desc.
John Rouillard <rouilj@ieee.org>
parents: 7522
diff changeset
610 whoosh or xapian for FTS.
f2c588128202 Clarify support for basic FTS all backends; augment native FTS desc.
John Rouillard <rouilj@ieee.org>
parents: 7522
diff changeset
611
f2c588128202 Clarify support for basic FTS all backends; augment native FTS desc.
John Rouillard <rouilj@ieee.org>
parents: 7522
diff changeset
612 There are several backends to choose from, each with benefits and
f2c588128202 Clarify support for basic FTS all backends; augment native FTS desc.
John Rouillard <rouilj@ieee.org>
parents: 7522
diff changeset
613 limitations:
1221
778297033003 cleanup of install docco
Richard Jones <richard@users.sourceforge.net>
parents: 1218
diff changeset
614
2179
5aa74f9879ac rework the backend selection bit
Richard Jones <richard@users.sourceforge.net>
parents: 2161
diff changeset
615 ========== =========== ===== ==============================
7523
f2c588128202 Clarify support for basic FTS all backends; augment native FTS desc.
John Rouillard <rouilj@ieee.org>
parents: 7522
diff changeset
616 Name Speed Users Support
2179
5aa74f9879ac rework the backend selection bit
Richard Jones <richard@users.sourceforge.net>
parents: 2161
diff changeset
617 ========== =========== ===== ==============================
5aa74f9879ac rework the backend selection bit
Richard Jones <richard@users.sourceforge.net>
parents: 2161
diff changeset
618 anydbm Slowest Few Always available
7316
a5f948e0eef5 remove (*) marker from sqlite backend table. No idea what it means.
John Rouillard <rouilj@ieee.org>
parents: 7311
diff changeset
619 sqlite Fastest Few Always available
6663
e63f514bb0e6 issue2551201 - Update references to psycopg2
John Rouillard <rouilj@ieee.org>
parents: 6653
diff changeset
620 postgresql Fast Many Needs install/admin (psycopg2_)
2179
5aa74f9879ac rework the backend selection bit
Richard Jones <richard@users.sourceforge.net>
parents: 2161
diff changeset
621 mysql Fast Many Needs install/admin (MySQLdb_)
5aa74f9879ac rework the backend selection bit
Richard Jones <richard@users.sourceforge.net>
parents: 2161
diff changeset
622 ========== =========== ===== ==============================
5aa74f9879ac rework the backend selection bit
Richard Jones <richard@users.sourceforge.net>
parents: 2161
diff changeset
623
7522
bbcdc7c92787 Add blurb for anydbm backend; clarify workding for SQLite backend.
John Rouillard <rouilj@ieee.org>
parents: 7521
diff changeset
624 **anydbm**
bbcdc7c92787 Add blurb for anydbm backend; clarify workding for SQLite backend.
John Rouillard <rouilj@ieee.org>
parents: 7521
diff changeset
625 This was one of the original database backends. It is a simple
bbcdc7c92787 Add blurb for anydbm backend; clarify workding for SQLite backend.
John Rouillard <rouilj@ieee.org>
parents: 7521
diff changeset
626 key/value store and is a prototype implementation for NoSQL
bbcdc7c92787 Add blurb for anydbm backend; clarify workding for SQLite backend.
John Rouillard <rouilj@ieee.org>
parents: 7521
diff changeset
627 backends. It also used to be the only backend that was
bbcdc7c92787 Add blurb for anydbm backend; clarify workding for SQLite backend.
John Rouillard <rouilj@ieee.org>
parents: 7521
diff changeset
628 guaranteed to be present. These days using SQLite is preferred
bbcdc7c92787 Add blurb for anydbm backend; clarify workding for SQLite backend.
John Rouillard <rouilj@ieee.org>
parents: 7521
diff changeset
629 unless you have some reason for preferring a key/value backend
bbcdc7c92787 Add blurb for anydbm backend; clarify workding for SQLite backend.
John Rouillard <rouilj@ieee.org>
parents: 7521
diff changeset
630 (e.g. you are interested in adding support for MongoDB or other
bbcdc7c92787 Add blurb for anydbm backend; clarify workding for SQLite backend.
John Rouillard <rouilj@ieee.org>
parents: 7521
diff changeset
631 NoSQL persistence layer).
3728
b476fef16ccc fixed support for pysqlite2 (version 2.1.0 is the minimum version supported)
Richard Jones <richard@users.sourceforge.net>
parents: 3722
diff changeset
632 **sqlite**
7522
bbcdc7c92787 Add blurb for anydbm backend; clarify workding for SQLite backend.
John Rouillard <rouilj@ieee.org>
parents: 7521
diff changeset
633 This uses the embedded database engine SQLite and the PySQLite_
bbcdc7c92787 Add blurb for anydbm backend; clarify workding for SQLite backend.
John Rouillard <rouilj@ieee.org>
parents: 7521
diff changeset
634 driver to provide a very fast
3935
1dab48842cbd Throwing up hands in resignation and finally deleting the metakit backend.
Richard Jones <richard@users.sourceforge.net>
parents: 3922
diff changeset
635 backend. This is not suitable for trackers which will have many
1dab48842cbd Throwing up hands in resignation and finally deleting the metakit backend.
Richard Jones <richard@users.sourceforge.net>
parents: 3922
diff changeset
636 simultaneous users, but requires much less installation and maintenance
1dab48842cbd Throwing up hands in resignation and finally deleting the metakit backend.
Richard Jones <richard@users.sourceforge.net>
parents: 3922
diff changeset
637 effort than more scalable postgresql and mysql backends.
3728
b476fef16ccc fixed support for pysqlite2 (version 2.1.0 is the minimum version supported)
Richard Jones <richard@users.sourceforge.net>
parents: 3722
diff changeset
638
7921
e3975f679bf1 issue2551302 - Remove support for sqlite version 1 from back_sqlite.py
John Rouillard <rouilj@ieee.org>
parents: 7887
diff changeset
639 SQLite is supported via PySQLite version 2.1.0 and sqlite3 (the last
3728
b476fef16ccc fixed support for pysqlite2 (version 2.1.0 is the minimum version supported)
Richard Jones <richard@users.sourceforge.net>
parents: 3722
diff changeset
640 being bundled with Python 2.5+)
3794
f5ddd1639a15 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 3754
diff changeset
641
7724
68c04cc8edf7 More doc upates for FTS5 requires for sqlite and roundup > 2.1.0.
John Rouillard <rouilj@ieee.org>
parents: 7719
diff changeset
642 Installed SQLite should be the latest version available (3.9.0 or newer).
68c04cc8edf7 More doc upates for FTS5 requires for sqlite and roundup > 2.1.0.
John Rouillard <rouilj@ieee.org>
parents: 7719
diff changeset
643
68c04cc8edf7 More doc upates for FTS5 requires for sqlite and roundup > 2.1.0.
John Rouillard <rouilj@ieee.org>
parents: 7719
diff changeset
644 .. _fts5-testing:
6588
91ab3e0ffcd0 Summary: Add test cases for sqlite fts
John Rouillard <rouilj@ieee.org>
parents: 6586
diff changeset
645
7698
4e37a7833708 doc: add FTS5 requirement for sqlite backend.
John Rouillard <rouilj@ieee.org>
parents: 7659
diff changeset
646 Installation of Roundup 2.2.0 or newer requires that the installed
7724
68c04cc8edf7 More doc upates for FTS5 requires for sqlite and roundup > 2.1.0.
John Rouillard <rouilj@ieee.org>
parents: 7719
diff changeset
647 SQLite supports FTS5. This is required even if you are not going to
68c04cc8edf7 More doc upates for FTS5 requires for sqlite and roundup > 2.1.0.
John Rouillard <rouilj@ieee.org>
parents: 7719
diff changeset
648 use FTS5 for full text searching. FTS5 was included in SQLite
68c04cc8edf7 More doc upates for FTS5 requires for sqlite and roundup > 2.1.0.
John Rouillard <rouilj@ieee.org>
parents: 7719
diff changeset
649 release 3.9.0 in October 2015. However some vendors choose not to
68c04cc8edf7 More doc upates for FTS5 requires for sqlite and roundup > 2.1.0.
John Rouillard <rouilj@ieee.org>
parents: 7719
diff changeset
650 include it. RedHat 7's native sqlite3 is known to not work.
68c04cc8edf7 More doc upates for FTS5 requires for sqlite and roundup > 2.1.0.
John Rouillard <rouilj@ieee.org>
parents: 7719
diff changeset
651
68c04cc8edf7 More doc upates for FTS5 requires for sqlite and roundup > 2.1.0.
John Rouillard <rouilj@ieee.org>
parents: 7719
diff changeset
652 You can check your SQLite by using the command line::
7698
4e37a7833708 doc: add FTS5 requirement for sqlite backend.
John Rouillard <rouilj@ieee.org>
parents: 7659
diff changeset
653
4e37a7833708 doc: add FTS5 requirement for sqlite backend.
John Rouillard <rouilj@ieee.org>
parents: 7659
diff changeset
654 echo 'pragma compile_options' | sqlite3 | grep FTS5
4e37a7833708 doc: add FTS5 requirement for sqlite backend.
John Rouillard <rouilj@ieee.org>
parents: 7659
diff changeset
655
4e37a7833708 doc: add FTS5 requirement for sqlite backend.
John Rouillard <rouilj@ieee.org>
parents: 7659
diff changeset
656 it should output ``ENABLE_FTS5`` if FTS5 is supported.
4e37a7833708 doc: add FTS5 requirement for sqlite backend.
John Rouillard <rouilj@ieee.org>
parents: 7659
diff changeset
657
7724
68c04cc8edf7 More doc upates for FTS5 requires for sqlite and roundup > 2.1.0.
John Rouillard <rouilj@ieee.org>
parents: 7719
diff changeset
658 You can check using the same version of Python you use for running
68c04cc8edf7 More doc upates for FTS5 requires for sqlite and roundup > 2.1.0.
John Rouillard <rouilj@ieee.org>
parents: 7719
diff changeset
659 Roundup with::
68c04cc8edf7 More doc upates for FTS5 requires for sqlite and roundup > 2.1.0.
John Rouillard <rouilj@ieee.org>
parents: 7719
diff changeset
660
68c04cc8edf7 More doc upates for FTS5 requires for sqlite and roundup > 2.1.0.
John Rouillard <rouilj@ieee.org>
parents: 7719
diff changeset
661 import sqlite3
68c04cc8edf7 More doc upates for FTS5 requires for sqlite and roundup > 2.1.0.
John Rouillard <rouilj@ieee.org>
parents: 7719
diff changeset
662
68c04cc8edf7 More doc upates for FTS5 requires for sqlite and roundup > 2.1.0.
John Rouillard <rouilj@ieee.org>
parents: 7719
diff changeset
663 con = sqlite3.connect(':memory:')
68c04cc8edf7 More doc upates for FTS5 requires for sqlite and roundup > 2.1.0.
John Rouillard <rouilj@ieee.org>
parents: 7719
diff changeset
664 cur = con.cursor()
68c04cc8edf7 More doc upates for FTS5 requires for sqlite and roundup > 2.1.0.
John Rouillard <rouilj@ieee.org>
parents: 7719
diff changeset
665 cur.execute('pragma compile_options;')
68c04cc8edf7 More doc upates for FTS5 requires for sqlite and roundup > 2.1.0.
John Rouillard <rouilj@ieee.org>
parents: 7719
diff changeset
666 available_pragmas = cur.fetchall()
68c04cc8edf7 More doc upates for FTS5 requires for sqlite and roundup > 2.1.0.
John Rouillard <rouilj@ieee.org>
parents: 7719
diff changeset
667 con.close()
68c04cc8edf7 More doc upates for FTS5 requires for sqlite and roundup > 2.1.0.
John Rouillard <rouilj@ieee.org>
parents: 7719
diff changeset
668
68c04cc8edf7 More doc upates for FTS5 requires for sqlite and roundup > 2.1.0.
John Rouillard <rouilj@ieee.org>
parents: 7719
diff changeset
669 The output should include ``('ENABLE_FTS5',)`` in the output.
68c04cc8edf7 More doc upates for FTS5 requires for sqlite and roundup > 2.1.0.
John Rouillard <rouilj@ieee.org>
parents: 7719
diff changeset
670
7523
f2c588128202 Clarify support for basic FTS all backends; augment native FTS desc.
John Rouillard <rouilj@ieee.org>
parents: 7522
diff changeset
671 Roundup supports using `SQLite's full text search capability
f2c588128202 Clarify support for basic FTS all backends; augment native FTS desc.
John Rouillard <rouilj@ieee.org>
parents: 7522
diff changeset
672 <admin_guide.html#sqlite-details>`_. This
6588
91ab3e0ffcd0 Summary: Add test cases for sqlite fts
John Rouillard <rouilj@ieee.org>
parents: 6586
diff changeset
673 can improve searching if you are not installing another indexer like
91ab3e0ffcd0 Summary: Add test cases for sqlite fts
John Rouillard <rouilj@ieee.org>
parents: 6586
diff changeset
674 xapian or whoosh. It works best with English text.
2179
5aa74f9879ac rework the backend selection bit
Richard Jones <richard@users.sourceforge.net>
parents: 2161
diff changeset
675 **postgresql**
6663
e63f514bb0e6 issue2551201 - Update references to psycopg2
John Rouillard <rouilj@ieee.org>
parents: 6653
diff changeset
676 Backend for popular RDBMS PostgreSQL. You must read
e63f514bb0e6 issue2551201 - Update references to psycopg2
John Rouillard <rouilj@ieee.org>
parents: 6653
diff changeset
677 `doc/postgresql.txt`_ for additional installation steps and
e63f514bb0e6 issue2551201 - Update references to psycopg2
John Rouillard <rouilj@ieee.org>
parents: 6653
diff changeset
678 requirements. You must also configure
3666
8304a1c1cc98 encourage use of latest psycopg
Richard Jones <richard@users.sourceforge.net>
parents: 3647
diff changeset
679 the ``rdbms`` section of your tracker's ``config.ini``. It is recommended
6663
e63f514bb0e6 issue2551201 - Update references to psycopg2
John Rouillard <rouilj@ieee.org>
parents: 6653
diff changeset
680 that you use at least version 2.8 of psycopg2.
7523
f2c588128202 Clarify support for basic FTS all backends; augment native FTS desc.
John Rouillard <rouilj@ieee.org>
parents: 7522
diff changeset
681
f2c588128202 Clarify support for basic FTS all backends; augment native FTS desc.
John Rouillard <rouilj@ieee.org>
parents: 7522
diff changeset
682 Roundup supports using `postgresql's full text search
f2c588128202 Clarify support for basic FTS all backends; augment native FTS desc.
John Rouillard <rouilj@ieee.org>
parents: 7522
diff changeset
683 capability
f2c588128202 Clarify support for basic FTS all backends; augment native FTS desc.
John Rouillard <rouilj@ieee.org>
parents: 7522
diff changeset
684 <admin_guide.html#postgresql-info>`_. This
f2c588128202 Clarify support for basic FTS all backends; augment native FTS desc.
John Rouillard <rouilj@ieee.org>
parents: 7522
diff changeset
685 can improve searching if you are not installing another indexer like
f2c588128202 Clarify support for basic FTS all backends; augment native FTS desc.
John Rouillard <rouilj@ieee.org>
parents: 7522
diff changeset
686 xapian or whoosh. It can be tuned to work with different languages.
1507
3481507d6098 Advertising mysql
Andrey Lebedev <kedder@users.sourceforge.net>
parents: 1317
diff changeset
687 **mysql**
6663
e63f514bb0e6 issue2551201 - Update references to psycopg2
John Rouillard <rouilj@ieee.org>
parents: 6653
diff changeset
688 Backend for popular RDBMS MySQL. You must read `doc/mysql.txt`_ for
e63f514bb0e6 issue2551201 - Update references to psycopg2
John Rouillard <rouilj@ieee.org>
parents: 6653
diff changeset
689 additional installation steps and requirements. You must also
e63f514bb0e6 issue2551201 - Update references to psycopg2
John Rouillard <rouilj@ieee.org>
parents: 6653
diff changeset
690 configure the ``rdbms`` section of your tracker's ``config.ini``
1221
778297033003 cleanup of install docco
Richard Jones <richard@users.sourceforge.net>
parents: 1218
diff changeset
691
2179
5aa74f9879ac rework the backend selection bit
Richard Jones <richard@users.sourceforge.net>
parents: 2161
diff changeset
692 You may defer your decision by setting your tracker up with the anydbm
5aa74f9879ac rework the backend selection bit
Richard Jones <richard@users.sourceforge.net>
parents: 2161
diff changeset
693 backend (which is guaranteed to be available) and switching to one of the
5aa74f9879ac rework the backend selection bit
Richard Jones <richard@users.sourceforge.net>
parents: 2161
diff changeset
694 other backends at any time using the instructions in the `administration
5aa74f9879ac rework the backend selection bit
Richard Jones <richard@users.sourceforge.net>
parents: 2161
diff changeset
695 guide`_.
1221
778297033003 cleanup of install docco
Richard Jones <richard@users.sourceforge.net>
parents: 1218
diff changeset
696
2401
a405124c3847 doc fixes
Richard Jones <richard@users.sourceforge.net>
parents: 2258
diff changeset
697 Regardless of which backend you choose, Roundup will attempt to initialise
6174
5522c950a2e4 Add indexing for roundup-admin references.
John Rouillard <rouilj@ieee.org>
parents: 6168
diff changeset
698 a new database for you when you run the "``roundup-admin initialise``" command.
2401
a405124c3847 doc fixes
Richard Jones <richard@users.sourceforge.net>
parents: 2258
diff changeset
699 In the case of MySQL and PostgreSQL you will need to have the appropriate
a405124c3847 doc fixes
Richard Jones <richard@users.sourceforge.net>
parents: 2258
diff changeset
700 privileges to create databases.
a405124c3847 doc fixes
Richard Jones <richard@users.sourceforge.net>
parents: 2258
diff changeset
701
1221
778297033003 cleanup of install docco
Richard Jones <richard@users.sourceforge.net>
parents: 1218
diff changeset
702
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
703 Configure a Web Interface
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
704 =========================
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
705
7310
ac6403bfcb1f add guidance onchoosing web deployment method
John Rouillard <rouilj@ieee.org>
parents: 7303
diff changeset
706 There are multiple ways to deploy the web interface. If your
ac6403bfcb1f add guidance onchoosing web deployment method
John Rouillard <rouilj@ieee.org>
parents: 7303
diff changeset
707 tracker will be heavily used and accessible from the internet, we
ac6403bfcb1f add guidance onchoosing web deployment method
John Rouillard <rouilj@ieee.org>
parents: 7303
diff changeset
708 suggest using Apache or Nginx in WSGI mode or as a reverse proxy
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
709 to the stand alone web server or WSGI server like Gunicorn.
7310
ac6403bfcb1f add guidance onchoosing web deployment method
John Rouillard <rouilj@ieee.org>
parents: 7303
diff changeset
710
ac6403bfcb1f add guidance onchoosing web deployment method
John Rouillard <rouilj@ieee.org>
parents: 7303
diff changeset
711 A FastCGI deployment with an alternate web server is suitable for
ac6403bfcb1f add guidance onchoosing web deployment method
John Rouillard <rouilj@ieee.org>
parents: 7303
diff changeset
712 lower traffic sites.
ac6403bfcb1f add guidance onchoosing web deployment method
John Rouillard <rouilj@ieee.org>
parents: 7303
diff changeset
713
ac6403bfcb1f add guidance onchoosing web deployment method
John Rouillard <rouilj@ieee.org>
parents: 7303
diff changeset
714 If you already run Zope, Roundup should deploy nicely in that
ac6403bfcb1f add guidance onchoosing web deployment method
John Rouillard <rouilj@ieee.org>
parents: 7303
diff changeset
715 framework.
ac6403bfcb1f add guidance onchoosing web deployment method
John Rouillard <rouilj@ieee.org>
parents: 7303
diff changeset
716
ac6403bfcb1f add guidance onchoosing web deployment method
John Rouillard <rouilj@ieee.org>
parents: 7303
diff changeset
717 If you are internet accessible, but expect a few users, or are on
ac6403bfcb1f add guidance onchoosing web deployment method
John Rouillard <rouilj@ieee.org>
parents: 7303
diff changeset
718 a hosted web server, using cgi-bin is a reasonable deployment.
ac6403bfcb1f add guidance onchoosing web deployment method
John Rouillard <rouilj@ieee.org>
parents: 7303
diff changeset
719
ac6403bfcb1f add guidance onchoosing web deployment method
John Rouillard <rouilj@ieee.org>
parents: 7303
diff changeset
720 Using a true HTTP server provide tools including: DOS prevention,
ac6403bfcb1f add guidance onchoosing web deployment method
John Rouillard <rouilj@ieee.org>
parents: 7303
diff changeset
721 throttling, web application firewalls etc. that are worth having
ac6403bfcb1f add guidance onchoosing web deployment method
John Rouillard <rouilj@ieee.org>
parents: 7303
diff changeset
722 in an internet facing application.
ac6403bfcb1f add guidance onchoosing web deployment method
John Rouillard <rouilj@ieee.org>
parents: 7303
diff changeset
723
ac6403bfcb1f add guidance onchoosing web deployment method
John Rouillard <rouilj@ieee.org>
parents: 7303
diff changeset
724 If you are running on an internal intranet, you can use the
ac6403bfcb1f add guidance onchoosing web deployment method
John Rouillard <rouilj@ieee.org>
parents: 7303
diff changeset
725 stand alone server: roundup-server, but even in this environment,
ac6403bfcb1f add guidance onchoosing web deployment method
John Rouillard <rouilj@ieee.org>
parents: 7303
diff changeset
726 using a real web server to serve static files and other resources
ac6403bfcb1f add guidance onchoosing web deployment method
John Rouillard <rouilj@ieee.org>
parents: 7303
diff changeset
727 will perform better.
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
728
6555
34cbd0e633d2 Added FastCGI deployment info, updated Docker docs; docker-compose added
John Rouillard <rouilj@ieee.org>
parents: 6522
diff changeset
729 .. contents::
34cbd0e633d2 Added FastCGI deployment info, updated Docker docs; docker-compose added
John Rouillard <rouilj@ieee.org>
parents: 6522
diff changeset
730 :depth: 1
34cbd0e633d2 Added FastCGI deployment info, updated Docker docs; docker-compose added
John Rouillard <rouilj@ieee.org>
parents: 6522
diff changeset
731 :local:
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
732
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
733 You may need to give the web server user permission to access the tracker home
1939
1303c208419d some updates that were sitting on disk
Richard Jones <richard@users.sourceforge.net>
parents: 1913
diff changeset
734 - see the `UNIX environment steps`_ for information. You may also need to
1576
80519db85eac More tweaks to the licensing to make the Debian folks happy :)
Richard Jones <richard@users.sourceforge.net>
parents: 1574
diff changeset
735 configure your system in some way - see `platform-specific notes`_.
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
736
6163
c2fd254c9257 Doc updates/indexing.
John Rouillard <rouilj@ieee.org>
parents: 6099
diff changeset
737 .. index:: pair: web interface; cgi
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
738
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
739 Web Server cgi-bin
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
740 ------------------
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
741
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
742 A benefit of using the cgi-bin approach is that it's the easiest way to
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
743 restrict access to your tracker to only use HTTPS. Access will be slower
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
744 than through the `stand-alone web server`_ though.
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
745
3754
9f4dd27ae843 documentation cleanup from Luke Ross (patch [SF#1594860])
Richard Jones <richard@users.sourceforge.net>
parents: 3736
diff changeset
746 If your Python isn't installed as "python" then you'll need to edit
1748
0f2678eeeac6 cgi-bin install note
Richard Jones <richard@users.sourceforge.net>
parents: 1747
diff changeset
747 the ``roundup.cgi`` script to fix the first line.
0f2678eeeac6 cgi-bin install note
Richard Jones <richard@users.sourceforge.net>
parents: 1747
diff changeset
748
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
749 .. index:: windows; IIS cgi installation
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
750
1540
3e65577ad6d7 minor changes
Richard Jones <richard@users.sourceforge.net>
parents: 1528
diff changeset
751 If you're using IIS on a Windows platform, you'll need to run this command
3e65577ad6d7 minor changes
Richard Jones <richard@users.sourceforge.net>
parents: 1528
diff changeset
752 for the cgi to work (it turns on the PATH_INFO cgi variable)::
3e65577ad6d7 minor changes
Richard Jones <richard@users.sourceforge.net>
parents: 1528
diff changeset
753
3e65577ad6d7 minor changes
Richard Jones <richard@users.sourceforge.net>
parents: 1528
diff changeset
754 adsutil.vbs set w3svc/AllowPathInfoForScriptMappings TRUE
3e65577ad6d7 minor changes
Richard Jones <richard@users.sourceforge.net>
parents: 1528
diff changeset
755
3799
ac4da2670516 trim trailing spaces
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3797
diff changeset
756 The ``adsutil.vbs`` file can be found in either ``c:\inetpub\adminscripts``
1540
3e65577ad6d7 minor changes
Richard Jones <richard@users.sourceforge.net>
parents: 1528
diff changeset
757 or ``c:\winnt\system32\inetsrv\adminsamples\`` or
3e65577ad6d7 minor changes
Richard Jones <richard@users.sourceforge.net>
parents: 1528
diff changeset
758 ``c:\winnt\system32\inetsrv\adminscripts\`` depending on your installation.
3e65577ad6d7 minor changes
Richard Jones <richard@users.sourceforge.net>
parents: 1528
diff changeset
759
6370
45e8d10a9609 Update links in documentation
John Rouillard <rouilj@ieee.org>
parents: 6297
diff changeset
760 See:
45e8d10a9609 Update links in documentation
John Rouillard <rouilj@ieee.org>
parents: 6297
diff changeset
761
8112
3645ce5b3036 docs: fix url for documenting how to use PATH_INFO with IIS server.
John Rouillard <rouilj@ieee.org>
parents: 8111
diff changeset
762 https://github.com/MicrosoftDocs/iis-docs/blob/main/iis/web-dev-reference/server-variables.md
6370
45e8d10a9609 Update links in documentation
John Rouillard <rouilj@ieee.org>
parents: 6297
diff changeset
763
8283
0d451fd19f1b doc: fix typo
John Rouillard <rouilj@ieee.org>
parents: 8237
diff changeset
764 More information about IIS setup may be found at:
2988
f4023f1cc1d6 apply IE caching "fix" to automatically serve up all pages expired
Richard Jones <richard@users.sourceforge.net>
parents: 2979
diff changeset
765
7712
a03f8f681992 doc: fix links: 302/302, images from lfw.org, wayback for sc
John Rouillard <rouilj@ieee.org>
parents: 7707
diff changeset
766 https://learn.microsoft.com/en-us/iis/
2988
f4023f1cc1d6 apply IE caching "fix" to automatically serve up all pages expired
Richard Jones <richard@users.sourceforge.net>
parents: 2979
diff changeset
767
7311
4bbd1316db00 document location of frontends when installed and in source
John Rouillard <rouilj@ieee.org>
parents: 7310
diff changeset
768 Copy the ``share/roundup/cgi-bin/roundup-cgi``
4bbd1316db00 document location of frontends when installed and in source
John Rouillard <rouilj@ieee.org>
parents: 7310
diff changeset
769 (``frontends/roundup.cgi`` in source tree) file to your web
4bbd1316db00 document location of frontends when installed and in source
John Rouillard <rouilj@ieee.org>
parents: 7310
diff changeset
770 server's ``cgi-bin`` directory. You will need to configure it to
4bbd1316db00 document location of frontends when installed and in source
John Rouillard <rouilj@ieee.org>
parents: 7310
diff changeset
771 tell it where your tracker home is. You can do this either:
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
772
3303
520eef0e0e91 fix installation docs referring to old-style configuration variables
Richard Jones <richard@users.sourceforge.net>
parents: 3297
diff changeset
773 Through an environment variable
520eef0e0e91 fix installation docs referring to old-style configuration variables
Richard Jones <richard@users.sourceforge.net>
parents: 3297
diff changeset
774 Set the variable TRACKER_HOMES to be a colon (":") separated list of
520eef0e0e91 fix installation docs referring to old-style configuration variables
Richard Jones <richard@users.sourceforge.net>
parents: 3297
diff changeset
775 name=home pairs (if you're using apache, the SetEnv directive can do this)
520eef0e0e91 fix installation docs referring to old-style configuration variables
Richard Jones <richard@users.sourceforge.net>
parents: 3297
diff changeset
776
520eef0e0e91 fix installation docs referring to old-style configuration variables
Richard Jones <richard@users.sourceforge.net>
parents: 3297
diff changeset
777 Directly in the ``roundup.cgi`` file itself
520eef0e0e91 fix installation docs referring to old-style configuration variables
Richard Jones <richard@users.sourceforge.net>
parents: 3297
diff changeset
778 Add your instance to the TRACKER_HOMES variable as ``'name': 'home'``
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
779
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
780 The "name" part of the configuration will appear in the URL and identifies the
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
781 tracker (so you may have more than one tracker per cgi-bin script). Make sure
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
782 there are no spaces or other illegal characters in it (to be safe, stick to
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
783 letters and numbers). The "name" forms part of the URL that appears in the
3303
520eef0e0e91 fix installation docs referring to old-style configuration variables
Richard Jones <richard@users.sourceforge.net>
parents: 3297
diff changeset
784 tracker config "tracker :: web" variable, so make sure they match. The "home"
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
785 part of the configuration is the tracker home directory.
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
786
2665
7d6dda802ca0 cgi install tip
Richard Jones <richard@users.sourceforge.net>
parents: 2594
diff changeset
787 If you're using Apache, you can use an additional trick to hide the
7d6dda802ca0 cgi install tip
Richard Jones <richard@users.sourceforge.net>
parents: 2594
diff changeset
788 ``.cgi`` extension of the cgi script. Place the ``roundup.cgi`` script
3754
9f4dd27ae843 documentation cleanup from Luke Ross (patch [SF#1594860])
Richard Jones <richard@users.sourceforge.net>
parents: 3736
diff changeset
789 wherever you want it to be, rename it to just ``roundup``, and add a
2665
7d6dda802ca0 cgi install tip
Richard Jones <richard@users.sourceforge.net>
parents: 2594
diff changeset
790 couple lines to your Apache configuration::
3799
ac4da2670516 trim trailing spaces
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3797
diff changeset
791
2665
7d6dda802ca0 cgi install tip
Richard Jones <richard@users.sourceforge.net>
parents: 2594
diff changeset
792 <Location /path/to/roundup>
7d6dda802ca0 cgi install tip
Richard Jones <richard@users.sourceforge.net>
parents: 2594
diff changeset
793 SetHandler cgi-script
7d6dda802ca0 cgi install tip
Richard Jones <richard@users.sourceforge.net>
parents: 2594
diff changeset
794 </Location>
7d6dda802ca0 cgi install tip
Richard Jones <richard@users.sourceforge.net>
parents: 2594
diff changeset
795
7d6dda802ca0 cgi install tip
Richard Jones <richard@users.sourceforge.net>
parents: 2594
diff changeset
796
4324
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
797 CGI-bin for Limited-Access Hosting
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
798 ----------------------------------
4324
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
799
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
800 If you are running in a shared-hosting environment or otherwise don't have
4656
bce631d8f24d issue2550738: Fixes for various documentation typos, thanks Nathan Russell
John Kristensen <john@jerrykan.com>
parents: 4510
diff changeset
801 permission to edit the system web server's configuration, but can create a
4324
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
802 ``.htaccess`` file then you may be able to use this approach.
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
803
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
804 1. Install flup_
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
805 2. Create a script ``roundup_stub`` in your server's ``cgi-bin`` directory
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
806 containing::
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
807
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
808 #!/usr/bin/env python
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
809
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
810 # if necessary modify the Python path to include the place you
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
811 # installed Roundup
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
812 #import sys
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
813 #sys.path.append('...')
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
814
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
815 # cgitb is needed for debugging in browser only
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
816 #import cgitb
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
817 #cgitb.enable()
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
818
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
819 # obtain the WSGI request dispatcher
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
820 from roundup.cgi.wsgi_handler import RequestDispatcher
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
821 tracker_home = '/path/to/tracker/home'
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
822 app = RequestDispatcher(tracker_home)
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
823
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
824 from flup.server.cgi import WSGIServer
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
825 WSGIServer(app).run()
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
826
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
827 3. Modify or created the ``.htaccess`` file in the desired (sub-)domain
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
828 directory to contain::
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
829
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
830 RewriteEngine On
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
831 RewriteBase /
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
832 RewriteRule ^(.*)$ /cgi-bin/roundup_stub/$1 [L]
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
833
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
834 Now loading the (sub-)domain in a browser should load the tracker web
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
835 interface. If you get a "500" error then enable the "cgitb" lines in the
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
836 stub to get some debugging information.
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
837
6163
c2fd254c9257 Doc updates/indexing.
John Rouillard <rouilj@ieee.org>
parents: 6099
diff changeset
838 .. index:: pair: web interface; stand alone server
4324
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
839
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
840 Stand-alone Web Server
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
841 ----------------------
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
842
3754
9f4dd27ae843 documentation cleanup from Luke Ross (patch [SF#1594860])
Richard Jones <richard@users.sourceforge.net>
parents: 3736
diff changeset
843 This approach will give you faster response than cgi-bin. You may
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
844 investigate using ProxyPass or similar configuration in apache to have your
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
845 tracker accessed through the same URL as other systems.
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
846
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
847 The stand alone serveris used by the Docker image.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
848
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
849 The stand-alone web server is started with the command ``roundup-server``. It
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
850 has several options - display them with ``roundup-server -h``.
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
851
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
852 The tracker home configuration is similar to the cgi-bin - you may either edit
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
853 the script to change the TRACKER_HOMES variable or you may supply the
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
854 name=home values on the command-line after all the other options.
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
855
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
856 To make the server run in the background, use the "-d" option, specifying the
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
857 name of a file to write the server process id (pid) to.
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
858
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
859
6163
c2fd254c9257 Doc updates/indexing.
John Rouillard <rouilj@ieee.org>
parents: 6099
diff changeset
860 .. index:: pair: web interface; Zope
c2fd254c9257 Doc updates/indexing.
John Rouillard <rouilj@ieee.org>
parents: 6099
diff changeset
861
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
862 Zope Product - ZRoundup
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
863 -----------------------
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
864
7311
4bbd1316db00 document location of frontends when installed and in source
John Rouillard <rouilj@ieee.org>
parents: 7310
diff changeset
865 ZRoundup installs as a regular Zope product. Copy the
4bbd1316db00 document location of frontends when installed and in source
John Rouillard <rouilj@ieee.org>
parents: 7310
diff changeset
866 ``share/roundup/frontends/ZRoundup`` (frontends/ZRoundup in the
4bbd1316db00 document location of frontends when installed and in source
John Rouillard <rouilj@ieee.org>
parents: 7310
diff changeset
867 source tree) directory to your Products directory either in
4bbd1316db00 document location of frontends when installed and in source
John Rouillard <rouilj@ieee.org>
parents: 7310
diff changeset
868 INSTANCE_HOME/Products or the Zope code tree lib/python/Products.
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
869
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
870 When you next (re)start up Zope, you will be able to add a ZRoundup object
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
871 that interfaces to your new tracker.
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
872
6163
c2fd254c9257 Doc updates/indexing.
John Rouillard <rouilj@ieee.org>
parents: 6099
diff changeset
873 .. index:: ! triple: web interface; apache; mod_wsgi
c2fd254c9257 Doc updates/indexing.
John Rouillard <rouilj@ieee.org>
parents: 6099
diff changeset
874 ! single: wsgi; apache
c2fd254c9257 Doc updates/indexing.
John Rouillard <rouilj@ieee.org>
parents: 6099
diff changeset
875
5891
6e341009593b Deprecate mod_python issue2551005
John Rouillard <rouilj@ieee.org>
parents: 5878
diff changeset
876 Apache HTTP Server with mod_wsgi
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
877 --------------------------------
5891
6e341009593b Deprecate mod_python issue2551005
John Rouillard <rouilj@ieee.org>
parents: 5878
diff changeset
878
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
879 This is a work in progress thanks to Garth Jensen.
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
880
5909
d57347ae6f25 Typo fixes in installation.txt doc.
John Rouillard <rouilj@ieee.org>
parents: 5908
diff changeset
881 See the main web site for `mod_wsgi`_ which include directions for
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
882 using mod_wsgi-express which is easier if you are not used to apache
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
883 configuration. Also there is the
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
884 `main mod_wsgi <https://modwsgi.readthedocs.io/en/develop/>`_ for more
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
885 detailed directions.
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
886
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
887 Background
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
888 ~~~~~~~~~~
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
889
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
890 These notes were developed on a Microsoft Azure VM running Ubuntu
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
891 18.04 LTS. The instructions below assume:
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
892
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
893 - python and roundup are already installed
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
894 - roundup is running in the system python instance (e.g. no virtual
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
895 environment)
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
896 - the tracker ``mytracker`` is installed in the ``trackers`` folder of
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
897 home directory of a user called ``admin``. Thus, the absolute path to
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
898 the tracker home directory is ``/home/admin/trackers/mytracker``.
7700
939e2edeab40 doc: use 'TEST-NET' IPv4 or IPv6 IP address ranges from RFC 6890
John Rouillard <rouilj@ieee.org>
parents: 7698
diff changeset
899 - the server has a static public IP address of 198.51.100.25
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
900
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
901 Install mod-wsgi
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
902 ~~~~~~~~~~~~~~~~
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
903
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
904 You can install/build it using the python package manager pip, or
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
905 install using the OS package manager (apt).
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
906
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
907 Pip install of mod_wsgi
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
908 '''''''''''''''''''''''
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
909
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
910 This is the tested method, and offers an easier path to get started,
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
911 but it does mean that you will need to keep up to date with any
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
912 security or other issues. If you use the packages supplied by your OS
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
913 vendor, you may get more timely updates and notifications.
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
914
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
915 The mod_wsgi docs talk about two installation methods: (1) the
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
916 so-called CMMI method or (2) with pip. The pip method also provides an
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
917 admin script called ``mod_wsgi-express`` that can start up a
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
918 standalone instance of Apache directly from the command line with an
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
919 auto generated configuration. These instructions follow the pip
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
920 method.
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
921
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
922
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
923 1. The `mod_wsgi`_ PyPi page lists prerequisites for various types of
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
924 systems. For Ubuntu, they are apache2 and apache2-dev. To see
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
925 installed apache packages, you can use ``dpkg -l | grep apache``.
5909
d57347ae6f25 Typo fixes in installation.txt doc.
John Rouillard <rouilj@ieee.org>
parents: 5908
diff changeset
926 If apache2 or apache2-dev are not installed, they install them
d57347ae6f25 Typo fixes in installation.txt doc.
John Rouillard <rouilj@ieee.org>
parents: 5908
diff changeset
927 with:
5911
133efe1fbff7 doc/installation.txt: replace tabs, remove trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents: 5910
diff changeset
928
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
929 - ``sudo apt update``
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
930 - ``sudo apt install apache2 apache2-dev``
5911
133efe1fbff7 doc/installation.txt: replace tabs, remove trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents: 5910
diff changeset
931
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
932 2. If ``pip`` is not already installed, install it with
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
933 ``sudo apt install python-pip``
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
934
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
935 If you are using python 3, use ``sudo apt-install python3-pip`` and
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
936 change references to pip in the directions to pip3.
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
937 3. ``sudo pip install mod_wsgi``. In my case, I got warnings about
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
938 the user not owning directories, but it said it completed
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
939 "successfully."
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
940 4. For testing, open port 8000 for TCP on the server. For an Azure VM,
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
941 this is done with Azure Portal under ``Networking`` > ``Add inbound port``
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
942 rule.
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
943 5. Test with ``mod_wsgi-express start-server``. This should serve
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
944 up content on localhost port 8000. You can then direct a browser on
7347
73ef1f84c933 Prevent sample URL's from becoming links.
John Rouillard <rouilj@ieee.org>
parents: 7340
diff changeset
945 the server itself to ``http://localhost:8000/`` or on another machine at
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
946 the server's domain name or ip address followed by colon then 8000
7700
939e2edeab40 doc: use 'TEST-NET' IPv4 or IPv6 IP address ranges from RFC 6890
John Rouillard <rouilj@ieee.org>
parents: 7698
diff changeset
947 (e.g. ``http://198.51.100.25:8000/``). If successful, you should see a
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
948 Malt Whiskey image.
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
949
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
950 Package manager install of mod_wsgi
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
951 '''''''''''''''''''''''''''''''''''
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
952
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
953 On debian (which should work for Ubuntu), install apache2 with
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
954 libapache2-mod-wsgi:
5891
6e341009593b Deprecate mod_python issue2551005
John Rouillard <rouilj@ieee.org>
parents: 5878
diff changeset
955
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
956 - ``sudo apt update``
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
957 - ``sudo apt install apache2 libapache2-mod-wsgi``
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
958
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
959 this is the less tested method for installing mod_wsgi and may not
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
960 install mod_wsgi-express, which is used below. However there is an
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
961 example apache config included as part of `WSGI Variations`_ that can
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
962 be used to hand craft an apache config.
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
963
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
964 You should make sure that the version you install is 3.5 or newer due
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
965 to security issues in older releases.
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
966
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
967 Configure web interface via wsgi_handler
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
968 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
969
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
970 1. In the tracker's home directory create a ``wsgi.py`` file with the
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
971 following content (substituting ``/home/admin/trackers/mytracker``
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
972 with the absolute path for your tracker's home directory):
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
973
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
974 .. code:: python
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
975
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
976 from roundup.cgi.wsgi_handler import RequestDispatcher
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
977 tracker_home = '/home/admin/trackers/mytracker'
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
978 application = RequestDispatcher(tracker_home)
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
979
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
980 To run the tracker on Port 8000 as a foreground process
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
981 '''''''''''''''''''''''''''''''''''''''''''''''''''''''
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
982
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
983 1. Change the ``tracker.web`` url in ``config.ini`` to port 8000 at the
7700
939e2edeab40 doc: use 'TEST-NET' IPv4 or IPv6 IP address ranges from RFC 6890
John Rouillard <rouilj@ieee.org>
parents: 7698
diff changeset
984 server domain name or ip address (e.g. ``http://198.51.100.25:8000/``).
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
985 2. Open port 8000 for TCP on the server if you didn't already do so.
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
986 3. ``cd`` to your tracker home directory, then run
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
987 ``mod_wsgi-express start-server wsgi.py``.
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
988 4. Test by directing a browser on another machine to the url you set
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
989 ``tracker.web`` to in ``config.ini``.
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
990
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
991 Run tracker as background daemon
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
992 ''''''''''''''''''''''''''''''''
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
993
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
994 To run the tracker on Port 80 or as a background process, you'll need
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
995 to configure a UNIX group with appropriate privileges as described in
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
996 `UNIX environment steps`_. These steps are summarized here:
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
997
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
998 1. To add a group named "mytrackergrp" run: ``sudo groupadd mytrackergrp``.
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
999 2. Add the owner of the tracker home (admin in this example) run:
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1000 ``sudo usermod -a -G mytrackergrp admin``
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1001 3. Add user that runs Apache (the default on Ubuntu is www-data) run:
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1002 ``sudo usermod -a -G mytrackergrp www-data``
5911
133efe1fbff7 doc/installation.txt: replace tabs, remove trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents: 5910
diff changeset
1003 4. Add user mail service runs as (e.g. daemon) run:
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1004 ``sudo usermod -a -G mytrackergrp daemon``
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1005 5. Change group of the database in the tracker folder run:
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1006 ``sudo chgrp -R mytrackergrp ~/trackers/mytracker``.
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1007 6. Make sure group can write to the database, and any new files created
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1008 in the database will be owned by the group run:
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1009 ``sudo chmod -R g+sw ~/trackers/mytracker/db``
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1010
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1011 To run mod_wsgi on PORT 80
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1012 ''''''''''''''''''''''''''
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1013
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1014 1. Change the ``tracker.web`` url in ``config.ini`` to the server url
7700
939e2edeab40 doc: use 'TEST-NET' IPv4 or IPv6 IP address ranges from RFC 6890
John Rouillard <rouilj@ieee.org>
parents: 7698
diff changeset
1015 with no port designator. E.g. ``http://198.51.100.25``.
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1016 2. Open port 80 on the server for TCP traffic if it isn't open already.
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1017 3. Stop the system instance of Apache to make sure it isn't holding on
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1018 to port 80 run: ``sudo service apache2 stop``.
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1019
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1020 To run as a foreground process
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1021 ++++++++++++++++++++++++++++++
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1022
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1023 1. From the tracker home directory, run
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1024 ``sudo mod_wsgi-express start-server wsgi.py --port 80 --user admin --group mytrackergrp``
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1025
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1026 To run as a background process
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1027 ++++++++++++++++++++++++++++++
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1028
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1029 1. From the tracker home directory, bash
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1030 ``sudo mod_wsgi-express setup-server wsgi.py --port=80 --user admin --group mytrackergrp --server-root=/etc/mod_wsgi-express-80``
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1031 2. Then, run ``sudo /etc/mod_wsgi-express-80/apachectl start``
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1032 3. To stop, run ``sudo /etc/mod_wsgi-express-80/apachectl stop``
5891
6e341009593b Deprecate mod_python issue2551005
John Rouillard <rouilj@ieee.org>
parents: 5878
diff changeset
1033
6163
c2fd254c9257 Doc updates/indexing.
John Rouillard <rouilj@ieee.org>
parents: 6099
diff changeset
1034 .. index:: triple: web interface; apache; mod_python (depricated)
c2fd254c9257 Doc updates/indexing.
John Rouillard <rouilj@ieee.org>
parents: 6099
diff changeset
1035
2554
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1036 Apache HTTP Server with mod_python
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1037 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1038
5891
6e341009593b Deprecate mod_python issue2551005
John Rouillard <rouilj@ieee.org>
parents: 5878
diff changeset
1039 As of roundup 2.0, mod_python support is deprecated. The apache.py
6e341009593b Deprecate mod_python issue2551005
John Rouillard <rouilj@ieee.org>
parents: 5878
diff changeset
1040 file is still available, but may be limited to working for Python 2
6e341009593b Deprecate mod_python issue2551005
John Rouillard <rouilj@ieee.org>
parents: 5878
diff changeset
1041 only. Using mod_wsgi with Apache is the recommended way to deploy
6e341009593b Deprecate mod_python issue2551005
John Rouillard <rouilj@ieee.org>
parents: 5878
diff changeset
1042 roundup under apache.
6e341009593b Deprecate mod_python issue2551005
John Rouillard <rouilj@ieee.org>
parents: 5878
diff changeset
1043
2554
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1044 `Mod_python`_ is an `Apache`_ module that embeds the Python interpreter
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1045 within the server. Running Roundup this way is much faster than all
3754
9f4dd27ae843 documentation cleanup from Luke Ross (patch [SF#1594860])
Richard Jones <richard@users.sourceforge.net>
parents: 3736
diff changeset
1046 above options and, like `web server cgi-bin`_, allows you to use HTTPS
2554
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1047 protocol. The drawback is that this setup is more complicated.
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1048
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1049 The following instructions were tested on apache 2.0 with mod_python 3.1.
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1050 If you are using older versions, your mileage may vary.
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1051
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1052 Mod_python uses OS threads. If your apache was built without threads
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1053 (quite commonly), you must load the threading library to run mod_python.
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1054 This is done by setting ``LD_PRELOAD`` to your threading library path
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1055 in apache ``envvars`` file. Example for gentoo linux (``envvars`` file
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1056 is located in ``/usr/lib/apache2/build/``)::
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1057
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1058 LD_PRELOAD=/lib/libpthread.so.0
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1059 export LD_PRELOAD
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1060
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1061 Example for FreeBSD (``envvars`` is in ``/usr/local/sbin/``)::
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1062
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1063 LD_PRELOAD=/usr/lib/libc_r.so
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1064 export LD_PRELOAD
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1065
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1066 Next, you have to add Roundup trackers configuration to apache config.
4249
87b3e905ae2e fixed typos in the installation instructions
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents: 4226
diff changeset
1067 Roundup apache interface uses the following options specified with
87b3e905ae2e fixed typos in the installation instructions
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents: 4226
diff changeset
1068 ``PythonOption`` directives:
2559
6c096b4aea67 added description and example of mod_python interface option TrackerLanguage
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2554
diff changeset
1069
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1070 TrackerHome:
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1071 defines the tracker home directory - the directory that was specified
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1072 when you did ``roundup-admin init``. This option is required.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1073
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1074 TrackerLanguage:
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1075 defines web user interface language. mod_python applications do not
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1076 receive OS environment variables in the same way as command-line
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1077 programs, so the language cannot be selected by setting commonly
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1078 used variables like ``LANG`` or ``LC_ALL``. ``TrackerLanguage``
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1079 value has the same syntax as values of these environment variables.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1080 This option may be omitted.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1081
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1082 TrackerDebug:
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1083 run the tracker in debug mode. Setting this option to ``yes`` or
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1084 ``true`` has the same effect as running ``roundup-server -t debug``:
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1085 the database schema and used html templates are rebuilt for each
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1086 HTTP request. Values ``no`` or ``false`` mean that all html
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1087 templates for the tracker are compiled and the database schema is
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1088 checked once at startup. This is the default behaviour.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1089
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1090 TrackerTiming:
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1091 has nearly the same effect as environment variable ``CGI_SHOW_TIMING``
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1092 for standalone roundup server. The difference is that setting this
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1093 option to ``no`` or ``false`` disables timings display. Value
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1094 ``comment`` writes request handling times in html comment, and
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1095 any other non-empty value makes timing report visible. By default,
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1096 timing display is disabled.
2945
98efa80f0f90 added mod_python options TrackerDebug and TrackerTiming
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2921
diff changeset
1097
2554
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1098 In the following example we have two trackers set up in
3754
9f4dd27ae843 documentation cleanup from Luke Ross (patch [SF#1594860])
Richard Jones <richard@users.sourceforge.net>
parents: 3736
diff changeset
1099 ``/var/db/roundup/support`` and ``/var/db/roundup/devel`` and accessed
2554
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1100 as ``https://my.host/roundup/support/`` and ``https://my.host/roundup/devel/``
3797
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
1101 respectively (provided Apache has been set up for SSL of course).
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
1102 Having them share same parent directory allows us to
2559
6c096b4aea67 added description and example of mod_python interface option TrackerLanguage
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2554
diff changeset
1103 reduce the number of configuration directives. Support tracker has
6c096b4aea67 added description and example of mod_python interface option TrackerLanguage
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2554
diff changeset
1104 russian user interface. The other tracker (devel) has english user
6c096b4aea67 added description and example of mod_python interface option TrackerLanguage
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2554
diff changeset
1105 interface (default).
2554
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1106
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1107 Static files from ``html`` directory are served by apache itself - this
4249
87b3e905ae2e fixed typos in the installation instructions
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents: 4226
diff changeset
1108 is quicker and generally more robust than doing that from python.
2554
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1109 Everything else is aliased to dummy (non-existing) ``py`` file,
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1110 which is handled by mod_python and our roundup module.
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1111
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1112 Example mod_python configuration::
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1113
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1114 #################################################
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1115 # Roundup Issue tracker
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1116 #################################################
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1117 # enable Python optimizations (like 'python -O')
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1118 PythonOptimize On
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1119 # let apache handle static files from 'html' directories
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1120 AliasMatch /roundup/(.+)/@@file/(.*) /var/db/roundup/$1/html/$2
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1121 # everything else is handled by roundup web UI
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1122 AliasMatch /roundup/([^/]+)/(?!@@file/)(.*) /var/db/roundup/$1/dummy.py/$2
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1123 # roundup requires a slash after tracker name - add it if missing
3965
248c3a7bc94d seems like a reasonable patch
Richard Jones <richard@users.sourceforge.net>
parents: 3949
diff changeset
1124 RedirectMatch permanent ^/roundup/([^/]+)$ /roundup/$1/
2554
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1125 # common settings for all roundup trackers
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1126 <Directory /var/db/roundup/*>
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1127 Order allow,deny
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1128 Allow from all
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1129 AllowOverride None
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1130 Options None
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1131 AddHandler python-program .py
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1132 PythonHandler roundup.cgi.apache
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1133 # uncomment the following line to see tracebacks in the browser
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1134 # (note that *some* tracebacks will be displayed anyway)
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1135 #PythonDebug On
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1136 </Directory>
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1137 # roundup tracker homes
2559
6c096b4aea67 added description and example of mod_python interface option TrackerLanguage
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2554
diff changeset
1138 <Directory /var/db/roundup/support>
6c096b4aea67 added description and example of mod_python interface option TrackerLanguage
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2554
diff changeset
1139 PythonOption TrackerHome /var/db/roundup/support
6c096b4aea67 added description and example of mod_python interface option TrackerLanguage
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2554
diff changeset
1140 PythonOption TrackerLanguage ru
6c096b4aea67 added description and example of mod_python interface option TrackerLanguage
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2554
diff changeset
1141 </Directory>
2554
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1142 <Directory /var/db/roundup/devel>
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1143 PythonOption TrackerHome /var/db/roundup/devel
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1144 </Directory>
3965
248c3a7bc94d seems like a reasonable patch
Richard Jones <richard@users.sourceforge.net>
parents: 3949
diff changeset
1145
3814
a612bdc6b1d3 thanks alex
Richard Jones <richard@users.sourceforge.net>
parents: 3799
diff changeset
1146 Notice that the ``/var/db/roundup`` path shown above refers to the directory
3797
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
1147 in which the tracker homes are stored. The actual value will thus depend on
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
1148 your system.
3799
ac4da2670516 trim trailing spaces
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3797
diff changeset
1149
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1150 .. index:: windows; apache config
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1151
3797
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
1152 On Windows the corresponding lines will look similar to these::
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
1153
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
1154 AliasMatch /roundup/(.+)/@@file/(.*) C:/DATA/roundup/$1/html/$2
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
1155 AliasMatch /roundup/([^/]+)/(?!@@file/)(.*) C:/DATA/roundup/$1/dummy.py/$2
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
1156 <Directory C:/DATA/roundup/*>
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
1157 <Directory C:/DATA/roundup/support>
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
1158 <Directory C:/DATA/roundup/devel>
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
1159
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
1160 In this example the directory hosting all of the tracker homes is
3799
ac4da2670516 trim trailing spaces
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3797
diff changeset
1161 ``C:\DATA\roundup``. (Notice that you must use forward slashes in paths
3797
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
1162 inside the httpd.conf file!)
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
1163
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
1164 The URL for accessing these trackers then become:
7347
73ef1f84c933 Prevent sample URL's from becoming links.
John Rouillard <rouilj@ieee.org>
parents: 7340
diff changeset
1165 ``http://<roundupserver>/roundup/support/`` and
3797
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
1166 ``http://<roundupserver>/roundup/devel/``
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
1167
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
1168 Note that in order to use https connections you must set up Apache for secure
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
1169 serving with SSL.
2554
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1170
6458
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1171 Nginx HTTP Server
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1172 -----------------
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1173
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1174 This configuration uses Gunicorn to run Roundup behind an Nginx proxy.
6458
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1175 The proxy also compresses the data using gzip. The url for the tracker
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1176 in config.ini should be ``https://tracker.example.org``.
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1177
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1178 .. code::
6458
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1179
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1180 user nginx;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1181 worker_processes auto;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1182 worker_rlimit_nofile 10000;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1183
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1184 error_log /var/log/nginx/global-error.log;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1185 pid /var/run/nginx.pid;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1186
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1187 events {
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1188 worker_connections 1024;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1189 }
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1190
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1191 upstream tracker-tracker {
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1192 # Gunicorn uses this socket for communication
6458
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1193 server unix:/var/run/roundup/tracker.sock fail_timeout=0;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1194 }
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1195
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1196 http {
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1197 include /etc/nginx/mime.types;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1198 default_type application/octet-stream;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1199
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1200 log_format main '$remote_addr - $remote_user [$time_local] "$request" '
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1201 '$status $body_bytes_sent "$http_referer" '
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1202 '"$http_user_agent" "$http_x_forwarded_for"';
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1203
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1204 access_log /var/log/nginx/global-access.log main;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1205 sendfile on;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1206 tcp_nopush on;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1207 tcp_nodelay on;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1208 server_tokens off;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1209
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1210 gzip_http_version 1.1;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1211 gzip_proxied any;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1212 gzip_min_length 500;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1213 # default comp_level is 1
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1214 gzip_comp_level 6;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1215 gzip_disable msie6
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1216 gzip_types text/plain text/css
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1217 text/xml application/xml
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1218 text/javascript application/javascript
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1219 text/json application/json;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1220 # upstream proxies need to match Accept-Encoding as
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1221 # part of their cache check
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1222 gzip_vary on
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1223
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1224 server {
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1225 listen 80;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1226 server_name tracker.example.org;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1227
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1228 location /.well-known/acme-challenge/ {
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1229 alias /etc/lego/.well-known/acme-challenge/;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1230 try_files $uri =404;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1231 }
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1232
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1233 location / {
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1234 return 301 https://$http_host$request_uri;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1235 }
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1236 }
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1237
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1238 server {
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1239 listen 443 ssl;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1240 server_name tracker.example.org;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1241 include mime.types;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1242
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1243 # By default use the snakeoil certificate...
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1244 # change this if you are using a real SSL cert
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1245 ssl_certificate /etc/ssl/certs/ssl-cert-snakeoil.pem;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1246 ssl_certificate_key /etc/ssl/private/ssl-cert-snakeoil.key;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1247
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1248 # These are useful for @@files where roundup is bypassed.
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1249 # but can be set by roundup as well. See:
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1250 # https://wiki.roundup-tracker.org/AddingContentSecurityPolicy
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1251 # which also sets other security headers.
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1252 add_header Strict-Transport-Security "max-age=63072000; includeSubdomains; preload";
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1253 add_header X-Frame-Options "sameorigin";
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1254 add_header X-Xss-Protection "1; mode=block";
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1255 add_header X-Content-Type-Options "nosniff";
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1256 add_header X-Permitted-Cross-Domain-Policies "none";
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1257
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1258 error_log /var/log/nginx/roundup-tracker.error.log;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1259 access_log /var/log/nginx/roundup-tracker.access.log
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1260
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1261 root /home/roundup/trackers/tracker/;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1262
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1263 # have nginx return files from @@file directly rather than
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1264 # going though roundup
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1265 location /@@file/ {
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1266 rewrite ^/@@file/(.*) /html/$1 break;
7499
a072331c843b Change customizing to customising in all variants.
John Rouillard <rouilj@ieee.org>
parents: 7453
diff changeset
1267 # note that you can not use cache control (see customising doc)
6458
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1268 # in roundup to set the expires headers since we are
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1269 # bypassing roundup. Consider using a map or different
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1270 # location stanzas to vary the expiration times.
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1271 expires 1h;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1272 }
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1273
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1274 location / {
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1275 # must define tracker-tracker in upstream stanza
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1276 proxy_pass http://tracker-tracker/;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1277 proxy_set_header Host $host;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1278 proxy_set_header X-Real-IP $remote_addr;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1279 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1280 }
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1281 }
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1282 }
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1283
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1284
6555
34cbd0e633d2 Added FastCGI deployment info, updated Docker docs; docker-compose added
John Rouillard <rouilj@ieee.org>
parents: 6522
diff changeset
1285 FastCGI (Cherokee, Hiawatha, lighttpd)
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1286 --------------------------------------
6555
34cbd0e633d2 Added FastCGI deployment info, updated Docker docs; docker-compose added
John Rouillard <rouilj@ieee.org>
parents: 6522
diff changeset
1287
34cbd0e633d2 Added FastCGI deployment info, updated Docker docs; docker-compose added
John Rouillard <rouilj@ieee.org>
parents: 6522
diff changeset
1288 The Hiawatha and lighttpd web servers can run Roundup using FastCGI.
34cbd0e633d2 Added FastCGI deployment info, updated Docker docs; docker-compose added
John Rouillard <rouilj@ieee.org>
parents: 6522
diff changeset
1289 Cherokee can run FastCGI but it also supports wsgi directly using a
8461
1522e0e15903 doc: remove uWSGI references as it is in maint mode and not being updated
John Rouillard <rouilj@ieee.org>
parents: 8399
diff changeset
1290 wsgi server like Waitress, Gnuicorn etc.
6555
34cbd0e633d2 Added FastCGI deployment info, updated Docker docs; docker-compose added
John Rouillard <rouilj@ieee.org>
parents: 6522
diff changeset
1291
7124
e65f808d55eb fix typo
John Rouillard <rouilj@ieee.org>
parents: 7065
diff changeset
1292 To run Roundup using FastCGI, the flup_ package can be used under
6555
34cbd0e633d2 Added FastCGI deployment info, updated Docker docs; docker-compose added
John Rouillard <rouilj@ieee.org>
parents: 6522
diff changeset
1293 Python 2 and Python 3. We don't have a detailed config for this, but
8350
d94bba15b65e chore(docs): fix links for iis server variables and flask fastcgi info
John Rouillard <rouilj@ieee.org>
parents: 8345
diff changeset
1294 the basic idea `can be found in the wayback machine archive`_.
6555
34cbd0e633d2 Added FastCGI deployment info, updated Docker docs; docker-compose added
John Rouillard <rouilj@ieee.org>
parents: 6522
diff changeset
1295
34cbd0e633d2 Added FastCGI deployment info, updated Docker docs; docker-compose added
John Rouillard <rouilj@ieee.org>
parents: 6522
diff changeset
1296 If you have deployed Roundup using FastCGI and flup we welcome example
34cbd0e633d2 Added FastCGI deployment info, updated Docker docs; docker-compose added
John Rouillard <rouilj@ieee.org>
parents: 6522
diff changeset
1297 configuration files and instructions.
34cbd0e633d2 Added FastCGI deployment info, updated Docker docs; docker-compose added
John Rouillard <rouilj@ieee.org>
parents: 6522
diff changeset
1298
8350
d94bba15b65e chore(docs): fix links for iis server variables and flask fastcgi info
John Rouillard <rouilj@ieee.org>
parents: 8345
diff changeset
1299 .. _can be found in the wayback machine archive:
d94bba15b65e chore(docs): fix links for iis server variables and flask fastcgi info
John Rouillard <rouilj@ieee.org>
parents: 8345
diff changeset
1300 https://web.archive.org/web/20241010170738/https://flask.palletsprojects.com/en/2.0.x/deploying/fastcgi/
6555
34cbd0e633d2 Added FastCGI deployment info, updated Docker docs; docker-compose added
John Rouillard <rouilj@ieee.org>
parents: 6522
diff changeset
1301 .. _flup: https://pypi.org/project/flup/
34cbd0e633d2 Added FastCGI deployment info, updated Docker docs; docker-compose added
John Rouillard <rouilj@ieee.org>
parents: 6522
diff changeset
1302
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1303 WSGI Variations
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1304 ---------------
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1305
6163
c2fd254c9257 Doc updates/indexing.
John Rouillard <rouilj@ieee.org>
parents: 6099
diff changeset
1306 .. index:: triple: web interface; apache; mod_wsgi
c2fd254c9257 Doc updates/indexing.
John Rouillard <rouilj@ieee.org>
parents: 6099
diff changeset
1307 single: wsgi; apache
c2fd254c9257 Doc updates/indexing.
John Rouillard <rouilj@ieee.org>
parents: 6099
diff changeset
1308
5938
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1309 Apache Alternate
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1310 ~~~~~~~~~~~~~~~~
5938
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1311
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1312 This method from Thomas Arendsen Hein goes into a bit more detail and
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1313 is designed to allow you to run multiple roundup trackers each under
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1314 their own user.
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1315
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1316 The tracker instances are read-only to the tracker user and located
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1317 under /srv/roundup/. The (writable) data files are stored in the home
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1318 directory of the user running the tracker.
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1319
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1320 To install roundup, download and unpack a distribution tarball and run
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1321 the following as user "roundup"::
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1322
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1323 python setup.py build_doc
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1324 python setup.py sdist --manifest-only
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1325 python setup.py install --home="/home/roundup/install" --force
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1326
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1327 Create a user roundup-foo, group roundup-foo to run the tracker. Add
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1328 the following apache config to
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1329 /etc/apache2/sites-available/roundup-foo (under debian/Ubunutu, modify
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1330 as needed):
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1331
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1332 .. code:: ApacheConf
3736
a2d22d0de0bc WSGI support via roundup.cgi.wsgi_handler
Richard Jones <richard@users.sourceforge.net>
parents: 3731
diff changeset
1333
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1334 ServerAdmin webmaster@example.com
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1335 ErrorLog /var/log/apache2/error.log
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1336
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1337 LogLevel notice
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1338
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1339 DocumentRoot /var/www/
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1340
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1341 <VirtualHost *:80>
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1342 CustomLog /var/log/apache2/access.log vhost_combined
3736
a2d22d0de0bc WSGI support via roundup.cgi.wsgi_handler
Richard Jones <richard@users.sourceforge.net>
parents: 3731
diff changeset
1343
5911
133efe1fbff7 doc/installation.txt: replace tabs, remove trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents: 5910
diff changeset
1344 # allow access to roundup docs
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1345 Alias /doc/ /home/roundup/install/share/doc/roundup/html/
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1346
5911
133efe1fbff7 doc/installation.txt: replace tabs, remove trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents: 5910
diff changeset
1347 # make apache serve static assets like css rather than
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1348 # having roundup serve the files
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1349 Alias /foo/@@file/ /srv/roundup/foo/html/
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1350
5911
133efe1fbff7 doc/installation.txt: replace tabs, remove trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents: 5910
diff changeset
1351 # make /foo into /foo/
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1352 RedirectMatch permanent ^/(foo)$ /$1/
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1353
5911
133efe1fbff7 doc/installation.txt: replace tabs, remove trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents: 5910
diff changeset
1354 # start a wsgi daemon process running as user roundup-foo
133efe1fbff7 doc/installation.txt: replace tabs, remove trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents: 5910
diff changeset
1355 # in group roundup-foo. This also changes directory to
133efe1fbff7 doc/installation.txt: replace tabs, remove trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents: 5910
diff changeset
1356 # ~roundup-foo before it starts roundup.wsgi.
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1357 WSGIDaemonProcess roundup-foo display-name=roundup-foo user=roundup-foo group=roundup-foo threads=25
3736
a2d22d0de0bc WSGI support via roundup.cgi.wsgi_handler
Richard Jones <richard@users.sourceforge.net>
parents: 3731
diff changeset
1358
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1359 # make tracker available at /foo and tie it into the
5911
133efe1fbff7 doc/installation.txt: replace tabs, remove trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents: 5910
diff changeset
1360 # wsgi script below.
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1361 WSGIScriptAlias /foo /srv/roundup/foo/roundup.wsgi
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1362 <Location /foo>
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1363 WSGIProcessGroup roundup-foo
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1364 </Location>
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1365 </VirtualHost>
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1366
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1367 The directory ~roundup-foo should have:
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1368
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1369 * a ``db`` subdirectory where messages and files will be stored
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1370 * a symbolic link called ``instance`` to /srv/roundup/foo which has
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1371 been initialised using ``roundup-admin``.
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1372
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1373 The `Apache HTTP Server with mod_wsgi`_ section above has a simple
5910
aec362e31fcd doc/installation.txt: fix typo
Thomas Arendsen Hein <thomas@intevation.de>
parents: 5909
diff changeset
1374 WSGI handler. This is an enhanced version to be put into
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1375 ``/srv/roundup/foo/roundup.wsgi``.
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1376
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1377 .. code:: python
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1378
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1379 import sys, os
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1380 sys.stdout = sys.stderr
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1381
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1382 enabled = True
3736
a2d22d0de0bc WSGI support via roundup.cgi.wsgi_handler
Richard Jones <richard@users.sourceforge.net>
parents: 3731
diff changeset
1383
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1384 if enabled:
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1385 # Add the directory with the roundup installation
5911
133efe1fbff7 doc/installation.txt: replace tabs, remove trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents: 5910
diff changeset
1386 # subdirectory to the python path.
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1387 sys.path.insert(0, '/home/roundup/install/lib/python')
3736
a2d22d0de0bc WSGI support via roundup.cgi.wsgi_handler
Richard Jones <richard@users.sourceforge.net>
parents: 3731
diff changeset
1388
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1389 # obtain the WSGI request dispatcher
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1390 from roundup.cgi.wsgi_handler import RequestDispatcher
5911
133efe1fbff7 doc/installation.txt: replace tabs, remove trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents: 5910
diff changeset
1391
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1392 tracker_home = os.path.join(os.getcwd(), 'instance')
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1393 application = RequestDispatcher(tracker_home)
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1394 else:
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1395 def application(environ, start_response):
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1396 status = '503 Service Unavailable'
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1397 output = 'service is down for maintenance'
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1398 response_headers = [('Content-type', 'text/plain'),
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1399 ('Content-Length', str(len(output)))]
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1400 start_response(status, response_headers)
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1401 return [output]
3736
a2d22d0de0bc WSGI support via roundup.cgi.wsgi_handler
Richard Jones <richard@users.sourceforge.net>
parents: 3731
diff changeset
1402
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1403 This handler allows you to temporarily disable the tracker by setting
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1404 "enabled = False", apache will automatically detect the changed
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1405 roundup.wsgi file and reload it.
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1406
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1407 One last change is needed. In the tracker's config.ini change the db
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1408 parameter in the [main] section to be /home/roundup-foo/db. This will
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1409 put the files and messages in the db directory for the user.
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1410
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1411 .. index:: pair: web interface; Gunicorn
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1412 single: wsgi; Gunicorn
6163
c2fd254c9257 Doc updates/indexing.
John Rouillard <rouilj@ieee.org>
parents: 6099
diff changeset
1413
5938
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1414 Gunicorn Installation
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1415 ~~~~~~~~~~~~~~~~~~~~~
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1416
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1417 To run with Gunicorn use ``pip install gunicorn``. This configuration
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1418 uses a front end web server like nginx, hiawatha, or apache configured as
5938
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1419 a reverse proxy. See your web server's documentation on how to set it
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1420 up as a reverse proxy.
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1421
6390
7c852cad2ca8 Add wsgi.py to frontends. Update docs.
John Rouillard <rouilj@ieee.org>
parents: 6372
diff changeset
1422 The file wsgi.py (obtained from ``frontends/wsgi.py``) should be in
7c852cad2ca8 Add wsgi.py to frontends. Update docs.
John Rouillard <rouilj@ieee.org>
parents: 6372
diff changeset
1423 the current directory with the contents::
5938
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1424
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1425 # if roundup is not installed on the default PYTHONPATH
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1426 # set it here with:
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1427 import sys
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1428 sys.path.append('/path/to/roundup/install/directory')
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1429
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1430 # obtain the WSGI request dispatcher
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1431 from roundup.cgi.wsgi_handler import RequestDispatcher
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1432 tracker_home = '/path/to/tracker/install/directory'
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1433
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1434 app = RequestDispatcher(tracker_home)
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1435
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1436 Assuming the proxy forwards /tracker, run Gunicorn as::
5938
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1437
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1438 SCRIPT_NAME=/tracker gunicorn --bind 127.0.0.1:8917 --timeout=10 wsgi:app
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1439
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1440 this runs roundup at port 8917 on the loopback interface. You should
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1441 configure the reverse proxy to talk to 127.0.0.1 at port 8917.
6458
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1442 If you want you can use a unix domain socket instead. Example:
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1443 ``--bind unix:///var/run/roundup/tracker.sock`` would be used for the
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1444 nginx configuration below.
5938
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1445
7601
ac8dc6e7a8e3 docs: add link to article on using gunicorn with docker.
John Rouillard <rouilj@ieee.org>
parents: 7581
diff changeset
1446 If you are customizing a docker continer to use gunicorn, see
ac8dc6e7a8e3 docs: add link to article on using gunicorn with docker.
John Rouillard <rouilj@ieee.org>
parents: 7581
diff changeset
1447 https://pythonspeed.com/articles/gunicorn-in-docker/.
ac8dc6e7a8e3 docs: add link to article on using gunicorn with docker.
John Rouillard <rouilj@ieee.org>
parents: 7581
diff changeset
1448
8399
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1449 .. index:: pair: web interface; Waitress
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1450 single: wsgi; Waitress
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1451
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1452 Waitress Installation
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1453 ~~~~~~~~~~~~~~~~~~~~~
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1454
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1455 Waitress is a pure Python WSGI server. It runs on Windows and you
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1456 could use IIS or other web server to reverse proxy HTTP to it.
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1457
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1458 You can use Waitress to serve Roundup without a proxy. It's not
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1459 recommended, but it can be used on a local network where roundup can't
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1460 be accessed from the internet.
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1461
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1462 Assuming you have installed Roundup in a virtual environment (venv),
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1463 install ``waitress`` and ``paste`` into the same venv using
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1464 pip. ``paste`` is optional, but it provides logging middleware that
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1465 produces standard combined format HTTP connection logs. You need to
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1466 modify the file wsgi.py (obtained from ``frontends/wsgi.py``) to
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1467 invoke waitress. It will look like::
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1468
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1469 # If you installed roundup to the system locations
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1470 # using pip you don't need to change this
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1471 # section. If you installed roundup in a custom
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1472 # location, uncomment these lines and change the
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1473 # path in the append() method to your custom path.
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1474 #import sys
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1475 #sys.path.append('/custom/location/where/roundup/is/installed')
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1476
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1477 # Obtain the WSGI request dispatcher
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1478 from roundup.cgi.wsgi_handler import RequestDispatcher
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1479
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1480 # Set the path to tracker home.
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1481 tracker_home = 'demo'
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1482
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1483 # Definition signature for app: app(environ, start_response):
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1484 # If using apache mod_wsgi change app to application.
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1485 app = RequestDispatcher(tracker_home)
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1486
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1487 from waitress import serve
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1488 # Optional replaced TransLogger(app) with app if not installed
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1489 from paste.translogger import TransLogger
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1490 serve(TransLogger(app),
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1491 host='0.0.0.0',
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1492 port=8917,
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1493 url_prefix=f"/{tracker_home}/")
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1494
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1495 This will make Roundup available to any host on your local network at
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1496 port 8917 under the ``/demo/`` path. Run it with ``python wsgi.py``.
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1497 If you want to run just on the local loopback interface, replace
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1498 ``0.0.0.0`` with ``127.0.0.1``
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1499
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1500 `See the Waitress docs`_ for more info on configuring waitress
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1501 including putting it behind a proxy, IPV6 support etc.
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1502
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1503 .. _`See the Waitress docs`:
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1504 https://docs.pylonsproject.org/projects/waitress/en/stable/
036ba3496232 doc: add waitress wsgi serve docs
John Rouillard <rouilj@ieee.org>
parents: 8350
diff changeset
1505
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1506 Configure an Email Interface
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1507 ============================
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1508
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1509 If you don't want to use the email component of Roundup, then remove the
1514
c706e55896d8 minor doc bug
Richard Jones <richard@users.sourceforge.net>
parents: 1507
diff changeset
1510 "``nosyreaction.py``" module from your tracker "``detectors``" directory.
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1511
1576
80519db85eac More tweaks to the licensing to make the Debian folks happy :)
Richard Jones <richard@users.sourceforge.net>
parents: 1574
diff changeset
1512 See `platform-specific notes`_ for steps that may be needed on your system.
80519db85eac More tweaks to the licensing to make the Debian folks happy :)
Richard Jones <richard@users.sourceforge.net>
parents: 1574
diff changeset
1513
3754
9f4dd27ae843 documentation cleanup from Luke Ross (patch [SF#1594860])
Richard Jones <richard@users.sourceforge.net>
parents: 3736
diff changeset
1514 There are five supported ways to get emailed issues into the
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1515 Roundup tracker. You should pick ONE of the following, all
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1516 of which will continue my example setup from above:
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1517
3799
ac4da2670516 trim trailing spaces
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3797
diff changeset
1518 As a mail alias pipe process
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1519 ----------------------------
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1520
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1521 Set up a mail alias called "issue_tracker" as (include the quote marks):
3524
ed82c2c6ee34 fix doc
Richard Jones <richard@users.sourceforge.net>
parents: 3523
diff changeset
1522 "``|/usr/bin/python /usr/bin/roundup-mailgw <tracker_home>``"
ed82c2c6ee34 fix doc
Richard Jones <richard@users.sourceforge.net>
parents: 3523
diff changeset
1523 (substitute ``/usr/bin`` for wherever roundup-mailgw is installed).
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1524
3754
9f4dd27ae843 documentation cleanup from Luke Ross (patch [SF#1594860])
Richard Jones <richard@users.sourceforge.net>
parents: 3736
diff changeset
1525 In some installations (e.g. RedHat Linux and Fedora Core) you'll need to
9f4dd27ae843 documentation cleanup from Luke Ross (patch [SF#1594860])
Richard Jones <richard@users.sourceforge.net>
parents: 3736
diff changeset
1526 set up smrsh so sendmail will accept the pipe command. In that case,
9f4dd27ae843 documentation cleanup from Luke Ross (patch [SF#1594860])
Richard Jones <richard@users.sourceforge.net>
parents: 3736
diff changeset
1527 symlink ``/etc/smrsh/roundup-mailgw`` to "``/usr/bin/roundup-mailgw``"
9f4dd27ae843 documentation cleanup from Luke Ross (patch [SF#1594860])
Richard Jones <richard@users.sourceforge.net>
parents: 3736
diff changeset
1528 and change the command to::
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1529
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1530 |roundup-mailgw /opt/roundup/trackers/support
3799
ac4da2670516 trim trailing spaces
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3797
diff changeset
1531
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1532 To test the mail gateway on unix systems, try::
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1533
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1534 echo test |mail -s '[issue] test' support@YOUR_DOMAIN_HERE
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1535
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1536 Be careful that some mail systems (postfix for example) will impose
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1537 limits on processes they spawn. In particular postfix can set a file
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1538 size limit that is inherited by the mailgw. If the database files
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1539 (anydbm, sqlite) exceed this limit, *this can cause your Roundup
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1540 database to become corrupted.*
3722
41feeed84caa *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 3666
diff changeset
1541
41feeed84caa *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 3666
diff changeset
1542
3447
83e358352e6e minor correction to recent addition by Faheem Mitha
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3446
diff changeset
1543 As a custom router/transport using a pipe process (Exim4 specific)
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1544 ------------------------------------------------------------------
3444
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1545
3446
2325b221bf47 link to exim site
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3444
diff changeset
1546 The following configuration snippets for `Exim 4`_ configuration
3444
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1547 implement a custom router & transport to accomplish mail delivery to
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1548 roundup-mailgw. A configuration for Exim3 is similar but not
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1549 included, since Exim3 is considered obsolete.
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1550
7136
a67f55c42476 fix links.
John Rouillard <rouilj@ieee.org>
parents: 7124
diff changeset
1551 .. _Exim 4: https://www.exim.org/
3446
2325b221bf47 link to exim site
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3444
diff changeset
1552
3444
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1553 This configuration is similar to the previous section, in that it uses
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1554 a pipe process. However, there are advantages to using a custom
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1555 router/transport process, if you are using Exim.
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1556
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1557 * This avoids privilege escalation, since otherwise the pipe process
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1558 will run as the mail user, typically mail. The transport can be
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1559 configured to run as the user appropriate for the task at hand. In the
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1560 transport described in this section, Exim4 runs as the unprivileged
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1561 user ``roundup``.
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1562
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1563 * Separate configuration is not required for each tracker
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1564 instance. When a email arrives at the server, Exim passes it through
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1565 the defined routers. The roundup_router looks for a match with one of
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1566 the roundup directories, and if there is one it is passed to the
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1567 roundup_transport, which uses the pipe process described in the
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1568 previous section (`As a mail alias pipe process`_).
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1569
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1570 The matching is done in the line::
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1571
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1572 require_files = /usr/bin/roundup-mailgw:ROUNDUP_HOME/$local_part/schema.py
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1573
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1574 The following configuration has been tested on Debian Sarge with
3799
ac4da2670516 trim trailing spaces
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3797
diff changeset
1575 Exim4.
3444
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1576
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1577 .. note::
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1578 The Debian Exim4 packages don't allow pipes in alias files
3444
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1579 by default, so the method described in the section `As a mail alias
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1580 pipe process`_ will not work with the default configuration. However,
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1581 the method described in this section does. See the discussion in
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1582 ``/usr/share/doc/exim4-config/README.system_aliases`` on any Debian
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1583 system with Exim4 installed.
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1584
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1585 For more Debian-specific information, see suggested addition to
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1586 README.Debian in
5756
e48b039b0ec0 issue2550966: fix suboptimal links in docs.
John Rouillard <rouilj@ieee.org>
parents: 5610
diff changeset
1587 https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=343283, which will
3444
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1588 hopefully be merged into the Debian package eventually.
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1589
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1590 This config makes a few assumptions:
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1591
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1592 * That the mail address corresponding to the tracker instance has the
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1593 same name as the directory of the tracker instance, i.e. the mail
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1594 interface address corresponding to a Roundup instance called
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1595 ``/var/lib/roundup/trackers/mytracker`` is ``mytracker@your.host``.
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1596
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1597 * That (at least) all the db subdirectories of all the tracker
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1598 instances (ie. ``/var/lib/roundup/trackers/*/db``) are owned by the same
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1599 user, in this case, 'roundup'.
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1600
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1601 * That if the ``schema.py`` file exists, then the tracker is ready for
3754
9f4dd27ae843 documentation cleanup from Luke Ross (patch [SF#1594860])
Richard Jones <richard@users.sourceforge.net>
parents: 3736
diff changeset
1602 use. Another option is to use the ``config.ini`` file (this changed
9f4dd27ae843 documentation cleanup from Luke Ross (patch [SF#1594860])
Richard Jones <richard@users.sourceforge.net>
parents: 3736
diff changeset
1603 in 0.8 from ``config.py``).
3444
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1604
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1605 Macros for Roundup router/transport. Should be placed in the macros
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1606 section of the Exim4 config::
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1607
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1608 # Home dir for your Roundup installation
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1609 ROUNDUP_HOME=/var/lib/roundup/trackers
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1610
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1611 # User and group for Roundup.
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1612 ROUNDUP_USER=roundup
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1613 ROUNDUP_GROUP=roundup
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1614
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1615 Custom router for Roundup. This will (probably) work if placed at the
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1616 beginning of the router section of the Exim4 config::
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1617
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1618 roundup_router:
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1619 driver = accept
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1620 # The config file config.ini seems like a more natural choice, but the
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1621 # file config.py was replaced by config.ini in 0.8, and schema.py needs
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1622 # to be present too.
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1623 require_files = /usr/bin/roundup-mailgw:ROUNDUP_HOME/$local_part/schema.py
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1624 transport = roundup_transport
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1625
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1626 Custom transport for Roundup. This will (probably) work if placed at
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1627 the beginning of the router section of the Exim4 config::
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1628
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1629 roundup_transport:
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1630 driver = pipe
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1631 command = /usr/bin/python /usr/bin/roundup-mailgw ROUNDUP_HOME/$local_part/
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1632 current_directory = ROUNDUP_HOME
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1633 home_directory = ROUNDUP_HOME
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1634 user = ROUNDUP_USER
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1635 group = ROUNDUP_GROUP
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1636
1317
28ae91aae74f clarifications
Richard Jones <richard@users.sourceforge.net>
parents: 1316
diff changeset
1637 As a regular job using a mailbox source
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1638 ---------------------------------------
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1639
3405
292fbed108ca *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 3335
diff changeset
1640 Set ``roundup-mailgw`` up to run every 10 minutes or so. For example
3524
ed82c2c6ee34 fix doc
Richard Jones <richard@users.sourceforge.net>
parents: 3523
diff changeset
1641 (substitute ``/usr/bin`` for wherever roundup-mailgw is installed)::
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1642
3524
ed82c2c6ee34 fix doc
Richard Jones <richard@users.sourceforge.net>
parents: 3523
diff changeset
1643 0,10,20,30,40,50 * * * * /usr/bin/roundup-mailgw /opt/roundup/trackers/support mailbox <mail_spool_file>
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1644
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1645 Where the ``mail_spool_file`` argument is the location of the roundup submission
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1646 user's mail spool. On most systems, the spool for a user "issue_tracker"
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1647 will be "``/var/mail/issue_tracker``".
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1648
1317
28ae91aae74f clarifications
Richard Jones <richard@users.sourceforge.net>
parents: 1316
diff changeset
1649 As a regular job using a POP source
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1650 -----------------------------------
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1651
3405
292fbed108ca *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 3335
diff changeset
1652 To retrieve from a POP mailbox, use a *cron* entry similar to the mailbox
3524
ed82c2c6ee34 fix doc
Richard Jones <richard@users.sourceforge.net>
parents: 3523
diff changeset
1653 one (substitute ``/usr/bin`` for wherever roundup-mailgw is
3405
292fbed108ca *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 3335
diff changeset
1654 installed)::
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1655
3524
ed82c2c6ee34 fix doc
Richard Jones <richard@users.sourceforge.net>
parents: 3523
diff changeset
1656 0,10,20,30,40,50 * * * * /usr/bin/roundup-mailgw /opt/roundup/trackers/support pop <pop_spec>
1317
28ae91aae74f clarifications
Richard Jones <richard@users.sourceforge.net>
parents: 1316
diff changeset
1657
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1658 where pop_spec is "``username:password@server``" that specifies the roundup
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1659 submission user's POP account name, password and server.
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1660
7503
7b6278da3faa Update roundup-mailgw install with other methods; formatting
John Rouillard <rouilj@ieee.org>
parents: 7501
diff changeset
1661 apop (authenticated) and pops (pop over ssl) methods are also
7b6278da3faa Update roundup-mailgw install with other methods; formatting
John Rouillard <rouilj@ieee.org>
parents: 7501
diff changeset
1662 supported. See `the section on mailgw in the admin guide
7b6278da3faa Update roundup-mailgw install with other methods; formatting
John Rouillard <rouilj@ieee.org>
parents: 7501
diff changeset
1663 <admin_guide.html#mail-gateway-script-command-line>`_.
7b6278da3faa Update roundup-mailgw install with other methods; formatting
John Rouillard <rouilj@ieee.org>
parents: 7501
diff changeset
1664
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1665 On windows, you would set up the command `using the windows scheduler`_.
1317
28ae91aae74f clarifications
Richard Jones <richard@users.sourceforge.net>
parents: 1316
diff changeset
1666
2211
272b654b1227 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2186
diff changeset
1667 As a regular job using an IMAP source
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1668 -------------------------------------
2211
272b654b1227 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2186
diff changeset
1669
272b654b1227 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2186
diff changeset
1670 To retrieve from an IMAP mailbox, use a *cron* entry similar to the
3524
ed82c2c6ee34 fix doc
Richard Jones <richard@users.sourceforge.net>
parents: 3523
diff changeset
1671 POP one (substitute ``/usr/bin`` for wherever roundup-mailgw is
3405
292fbed108ca *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 3335
diff changeset
1672 installed)::
2211
272b654b1227 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2186
diff changeset
1673
3524
ed82c2c6ee34 fix doc
Richard Jones <richard@users.sourceforge.net>
parents: 3523
diff changeset
1674 0,10,20,30,40,50 * * * * /usr/bin/roundup-mailgw /opt/roundup/trackers/support imap <imap_spec>
2211
272b654b1227 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2186
diff changeset
1675
272b654b1227 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2186
diff changeset
1676 where imap_spec is "``username:password@server``" that specifies the roundup
272b654b1227 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2186
diff changeset
1677 submission user's IMAP account name, password and server. You may
7503
7b6278da3faa Update roundup-mailgw install with other methods; formatting
John Rouillard <rouilj@ieee.org>
parents: 7501
diff changeset
1678 optionally include a mailbox to use other than the default ``INBOX`` with::
7b6278da3faa Update roundup-mailgw install with other methods; formatting
John Rouillard <rouilj@ieee.org>
parents: 7501
diff changeset
1679
7b6278da3faa Update roundup-mailgw install with other methods; formatting
John Rouillard <rouilj@ieee.org>
parents: 7501
diff changeset
1680 imap username:password@server mailbox
7b6278da3faa Update roundup-mailgw install with other methods; formatting
John Rouillard <rouilj@ieee.org>
parents: 7501
diff changeset
1681
7b6278da3faa Update roundup-mailgw install with other methods; formatting
John Rouillard <rouilj@ieee.org>
parents: 7501
diff changeset
1682 If you have a secure (ie. HTTPS) IMAP server then you may use
7b6278da3faa Update roundup-mailgw install with other methods; formatting
John Rouillard <rouilj@ieee.org>
parents: 7501
diff changeset
1683 ``imaps`` in place of ``imap`` in the command to use a securnae
7b6278da3faa Update roundup-mailgw install with other methods; formatting
John Rouillard <rouilj@ieee.org>
parents: 7501
diff changeset
1684 connection. To use imap with CRAM or OAUTH, see `the section on
7b6278da3faa Update roundup-mailgw install with other methods; formatting
John Rouillard <rouilj@ieee.org>
parents: 7501
diff changeset
1685 mailgw in the admin guide
7b6278da3faa Update roundup-mailgw install with other methods; formatting
John Rouillard <rouilj@ieee.org>
parents: 7501
diff changeset
1686 <admin_guide.html#mail-gateway-script-command-line>`_ .
7b6278da3faa Update roundup-mailgw install with other methods; formatting
John Rouillard <rouilj@ieee.org>
parents: 7501
diff changeset
1687
7b6278da3faa Update roundup-mailgw install with other methods; formatting
John Rouillard <rouilj@ieee.org>
parents: 7501
diff changeset
1688 As with the POP job, on windows, you would set up the command
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1689 `using the windows scheduler`_.
2211
272b654b1227 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2186
diff changeset
1690
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1691
1939
1303c208419d some updates that were sitting on disk
Richard Jones <richard@users.sourceforge.net>
parents: 1913
diff changeset
1692 UNIX Environment Steps
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1693 ======================
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
1694
1089
43ab730ee194 instance -> tracker, node -> item
Richard Jones <richard@users.sourceforge.net>
parents: 1078
diff changeset
1695 Each tracker ideally should have its own UNIX group, so create
1049
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1696 a UNIX group (edit ``/etc/group`` or your appropriate NIS map if
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1697 you're using NIS). To continue with my examples so far, I would
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1698 create the UNIX group 'support', although the name of the UNIX
1089
43ab730ee194 instance -> tracker, node -> item
Richard Jones <richard@users.sourceforge.net>
parents: 1078
diff changeset
1699 group does not have to be the same as the tracker name. To this
1049
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1700 'support' group I then add all of the UNIX usernames who will be
1089
43ab730ee194 instance -> tracker, node -> item
Richard Jones <richard@users.sourceforge.net>
parents: 1078
diff changeset
1701 working with this Roundup tracker. In addition to 'real' users,
1049
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1702 the Roundup email gateway will need to have permissions to this
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1703 area as well, so add the user your mail service runs as to the
1574
67af854f4c33 more installation hintage
Richard Jones <richard@users.sourceforge.net>
parents: 1571
diff changeset
1704 group (typically "mail" or "daemon"). The UNIX group might then
67af854f4c33 more installation hintage
Richard Jones <richard@users.sourceforge.net>
parents: 1571
diff changeset
1705 look like::
1049
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1706
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1707 support:*:1002:jblaine,samh,geezer,mail
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
1708
1049
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1709 If you intend to use the web interface (as most people do), you
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1710 should also add the username your web server runs as to the group.
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1711 My group now looks like this::
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
1712
1049
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1713 support:*:1002:jblaine,samh,geezer,mail,apache
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1714
1089
43ab730ee194 instance -> tracker, node -> item
Richard Jones <richard@users.sourceforge.net>
parents: 1078
diff changeset
1715 The tracker "db" directory should be chmod'ed g+sw so that the group can
1078
344bad728d10 more tweakage of help display and style issues
Richard Jones <richard@users.sourceforge.net>
parents: 1049
diff changeset
1716 write to the database, and any new files created in the database will be owned
344bad728d10 more tweakage of help display and style issues
Richard Jones <richard@users.sourceforge.net>
parents: 1049
diff changeset
1717 by the group.
344bad728d10 more tweakage of help display and style issues
Richard Jones <richard@users.sourceforge.net>
parents: 1049
diff changeset
1718
2594
c0d6d5004464 rdbms doc updates
Richard Jones <richard@users.sourceforge.net>
parents: 2559
diff changeset
1719 If you're using the mysql or postgresql backend then you'll need to ensure
c0d6d5004464 rdbms doc updates
Richard Jones <richard@users.sourceforge.net>
parents: 2559
diff changeset
1720 that the tracker user has appropriate permissions to create/modify the
c0d6d5004464 rdbms doc updates
Richard Jones <richard@users.sourceforge.net>
parents: 2559
diff changeset
1721 database. If you're using roundup.cgi, the apache user needs permissions
c0d6d5004464 rdbms doc updates
Richard Jones <richard@users.sourceforge.net>
parents: 2559
diff changeset
1722 to modify the database. Alternatively, explicitly specify a database login
2921
ad4fb8a14a97 more doc updates, not so many TODOs any more
Richard Jones <richard@users.sourceforge.net>
parents: 2818
diff changeset
1723 in ``rdbms`` -> ``user`` and ``password`` in ``config.ini``.
2594
c0d6d5004464 rdbms doc updates
Richard Jones <richard@users.sourceforge.net>
parents: 2559
diff changeset
1724
1049
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1725 An alternative to the above is to create a new user who has the sole
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1726 responsibility of running roundup. This user:
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
1727
1049
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1728 1. runs the CGI interface daemon
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1729 2. runs regular polls for email
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1730 3. runs regular checks (using cron) to ensure the daemon is up
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1731 4. optionally has no login password so that nobody but the "root" user
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1732 may actually login and play with the roundup setup.
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
1733
3754
9f4dd27ae843 documentation cleanup from Luke Ross (patch [SF#1594860])
Richard Jones <richard@users.sourceforge.net>
parents: 3736
diff changeset
1734 If you're using a Linux system (e.g. Fedora Core) with SELinux enabled,
9f4dd27ae843 documentation cleanup from Luke Ross (patch [SF#1594860])
Richard Jones <richard@users.sourceforge.net>
parents: 3736
diff changeset
1735 you will need to ensure that the db directory has a context that
9f4dd27ae843 documentation cleanup from Luke Ross (patch [SF#1594860])
Richard Jones <richard@users.sourceforge.net>
parents: 3736
diff changeset
1736 permits the web server to modify and create files. If you're using the
9f4dd27ae843 documentation cleanup from Luke Ross (patch [SF#1594860])
Richard Jones <richard@users.sourceforge.net>
parents: 3736
diff changeset
1737 mysql or postgresql backend you may also need to update your policy to
9f4dd27ae843 documentation cleanup from Luke Ross (patch [SF#1594860])
Richard Jones <richard@users.sourceforge.net>
parents: 3736
diff changeset
1738 allow the web server to access the database socket.
9f4dd27ae843 documentation cleanup from Luke Ross (patch [SF#1594860])
Richard Jones <richard@users.sourceforge.net>
parents: 3736
diff changeset
1739
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
1740
3830
a48c514c465f Add simple anti-spam recipe to docs
Richard Jones <richard@users.sourceforge.net>
parents: 3814
diff changeset
1741 Public Tracker Considerations
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1742 =============================
3830
a48c514c465f Add simple anti-spam recipe to docs
Richard Jones <richard@users.sourceforge.net>
parents: 3814
diff changeset
1743
a48c514c465f Add simple anti-spam recipe to docs
Richard Jones <richard@users.sourceforge.net>
parents: 3814
diff changeset
1744 If you run a public tracker, you will eventually have to think about
a48c514c465f Add simple anti-spam recipe to docs
Richard Jones <richard@users.sourceforge.net>
parents: 3814
diff changeset
1745 dealing with spam entered through both the web and mail interfaces.
a48c514c465f Add simple anti-spam recipe to docs
Richard Jones <richard@users.sourceforge.net>
parents: 3814
diff changeset
1746
5300
d8ed32b297e2 Update to migrating backend and tweak to install doc.
John Rouillard <rouilj@ieee.org>
parents: 5140
diff changeset
1747 See the section on `Preventing SPAM`_ in the
d8ed32b297e2 Update to migrating backend and tweak to install doc.
John Rouillard <rouilj@ieee.org>
parents: 5140
diff changeset
1748 `customisation documentation`_ that has a simple detector
d8ed32b297e2 Update to migrating backend and tweak to install doc.
John Rouillard <rouilj@ieee.org>
parents: 5140
diff changeset
1749 that will block lot of spam attempts.
3830
a48c514c465f Add simple anti-spam recipe to docs
Richard Jones <richard@users.sourceforge.net>
parents: 3814
diff changeset
1750
7501
d401d6f51604 Update Public tracker consideration with wiki links
John Rouillard <rouilj@ieee.org>
parents: 7500
diff changeset
1751 Also you can consider adding `reCaptcha to reduce bot logins as
d401d6f51604 Update Public tracker consideration with wiki links
John Rouillard <rouilj@ieee.org>
parents: 7500
diff changeset
1752 described on the wiki
d401d6f51604 Update Public tracker consideration with wiki links
John Rouillard <rouilj@ieee.org>
parents: 7500
diff changeset
1753 <https://wiki.roundup-tracker.org/RequireReCAPTCHAForLogin>`_. The
d401d6f51604 Update Public tracker consideration with wiki links
John Rouillard <rouilj@ieee.org>
parents: 7500
diff changeset
1754 wiki also documents how to add `multi-factor (MFA)/one time
d401d6f51604 Update Public tracker consideration with wiki links
John Rouillard <rouilj@ieee.org>
parents: 7500
diff changeset
1755 keys/password using TOTP/HOTP
d401d6f51604 Update Public tracker consideration with wiki links
John Rouillard <rouilj@ieee.org>
parents: 7500
diff changeset
1756 <https://wiki.roundup-tracker.org/OneTimePasswords>`_. If you
7602
4778b8f8f301 docs: fix grammar
John Rouillard <rouilj@ieee.org>
parents: 7601
diff changeset
1757 have a single sign on system see: the `wiki page on using Shibboleth
7501
d401d6f51604 Update Public tracker consideration with wiki links
John Rouillard <rouilj@ieee.org>
parents: 7500
diff changeset
1758 <https://wiki.roundup-tracker.org/ShibbolethLogin>`_
d401d6f51604 Update Public tracker consideration with wiki links
John Rouillard <rouilj@ieee.org>
parents: 7500
diff changeset
1759 or `LDAP <https://wiki.roundup-tracker.org/LDAPLogin2_1_5_1>`_
d401d6f51604 Update Public tracker consideration with wiki links
John Rouillard <rouilj@ieee.org>
parents: 7500
diff changeset
1760 with Roundup. More customisation can be found under the
d401d6f51604 Update Public tracker consideration with wiki links
John Rouillard <rouilj@ieee.org>
parents: 7500
diff changeset
1761 Security headings of the `CustomisationExamples wiki page
d401d6f51604 Update Public tracker consideration with wiki links
John Rouillard <rouilj@ieee.org>
parents: 7500
diff changeset
1762 <https://wiki.roundup-tracker.org/CustomisationExamples>`_ and
d401d6f51604 Update Public tracker consideration with wiki links
John Rouillard <rouilj@ieee.org>
parents: 7500
diff changeset
1763 `AdminstrationExample
d401d6f51604 Update Public tracker consideration with wiki links
John Rouillard <rouilj@ieee.org>
parents: 7500
diff changeset
1764 <https://wiki.roundup-tracker.org/AdministrationExample>`_ pages
d401d6f51604 Update Public tracker consideration with wiki links
John Rouillard <rouilj@ieee.org>
parents: 7500
diff changeset
1765 on the wiki.
d401d6f51604 Update Public tracker consideration with wiki links
John Rouillard <rouilj@ieee.org>
parents: 7500
diff changeset
1766
d401d6f51604 Update Public tracker consideration with wiki links
John Rouillard <rouilj@ieee.org>
parents: 7500
diff changeset
1767
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1768 Docker Support
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1769 ==============
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1770
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1771 If you don't want to install Roundup on a host, you can create a
7500
c550b338616a Link to docker support from main web index. Docker support changes.
John Rouillard <rouilj@ieee.org>
parents: 7499
diff changeset
1772 Docker container or use the `pre-built container on
c550b338616a Link to docker support from main web index. Docker support changes.
John Rouillard <rouilj@ieee.org>
parents: 7499
diff changeset
1773 hub.docker.com
c550b338616a Link to docker support from main web index. Docker support changes.
John Rouillard <rouilj@ieee.org>
parents: 7499
diff changeset
1774 <https://hub.docker.com/r/rounduptracker/roundup>`_. Docker hub
c550b338616a Link to docker support from main web index. Docker support changes.
John Rouillard <rouilj@ieee.org>
parents: 7499
diff changeset
1775 images support `multiple tags <#tags-for-dockerhub-docker-images>`_.
c550b338616a Link to docker support from main web index. Docker support changes.
John Rouillard <rouilj@ieee.org>
parents: 7499
diff changeset
1776 Docker images run Roundup using the `stand-alone web
c550b338616a Link to docker support from main web index. Docker support changes.
John Rouillard <rouilj@ieee.org>
parents: 7499
diff changeset
1777 server`_ method. The image only supports http. We suggest putting an
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1778 https terminating proxy in front of it.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1779
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1780 This is a work in progress and patches to improve it are welcome. You
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1781 can find the docker config files under the `scripts/Docker` directory
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1782 of the source tree.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1783
7500
c550b338616a Link to docker support from main web index. Docker support changes.
John Rouillard <rouilj@ieee.org>
parents: 7499
diff changeset
1784 The Roundup container uses the 64 bit Alpine Python distribution.
c550b338616a Link to docker support from main web index. Docker support changes.
John Rouillard <rouilj@ieee.org>
parents: 7499
diff changeset
1785 It includes database drivers for anydbm, SQLite, MySQL and
c550b338616a Link to docker support from main web index. Docker support changes.
John Rouillard <rouilj@ieee.org>
parents: 7499
diff changeset
1786 Postgresql (Postgresql is untested). It also includes additional
c550b338616a Link to docker support from main web index. Docker support changes.
John Rouillard <rouilj@ieee.org>
parents: 7499
diff changeset
1787 libraries that are listed in `scripts/Docker/requirements.txt`
c550b338616a Link to docker support from main web index. Docker support changes.
John Rouillard <rouilj@ieee.org>
parents: 7499
diff changeset
1788 (including redis client support).
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1789
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1790 Email support is a work in progress. Outgoing email to an external
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1791 SMTP server should work. Receiving email should work by using a
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1792 scheduled (cron) job to access email:
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1793
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1794 * `As a regular job using a mailbox source`_
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1795 * `As a regular job using a POP source`_
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1796 * `As a regular job using an IMAP source`_
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1797
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1798 However running cron in a container is problematic (running
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1799 busybox crond as root vs. non-root, requiring setgrp privs
7603
7515d03fb26d docs: add possible way to get email into dockerized roundup.
John Rouillard <rouilj@ieee.org>
parents: 7602
diff changeset
1800 etc).
7515d03fb26d docs: add possible way to get email into dockerized roundup.
John Rouillard <rouilj@ieee.org>
parents: 7602
diff changeset
1801
7515d03fb26d docs: add possible way to get email into dockerized roundup.
John Rouillard <rouilj@ieee.org>
parents: 7602
diff changeset
1802 Using the host's crontab with a command like::
7515d03fb26d docs: add possible way to get email into dockerized roundup.
John Rouillard <rouilj@ieee.org>
parents: 7602
diff changeset
1803
7515d03fb26d docs: add possible way to get email into dockerized roundup.
John Rouillard <rouilj@ieee.org>
parents: 7602
diff changeset
1804 docker exec roundup-tracker roundup-mailgw tracker \
7515d03fb26d docs: add possible way to get email into dockerized roundup.
John Rouillard <rouilj@ieee.org>
parents: 7602
diff changeset
1805 mailbox /var/spool/mail/roundup
7515d03fb26d docs: add possible way to get email into dockerized roundup.
John Rouillard <rouilj@ieee.org>
parents: 7602
diff changeset
1806
7515d03fb26d docs: add possible way to get email into dockerized roundup.
John Rouillard <rouilj@ieee.org>
parents: 7602
diff changeset
1807 might be a solution if you can mount a mail spool directory or use
7515d03fb26d docs: add possible way to get email into dockerized roundup.
John Rouillard <rouilj@ieee.org>
parents: 7602
diff changeset
1808 pop/imap. Patches for implementing better email support are welcome.
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1809
7441
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1810 If you want to use a MySQL backend, see `Docker-compose
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1811 Deployment`_ to deploy a Roundup container and a MySQL container
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1812 backend for use with Roundup.
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1813
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1814 We recommend you follow the `OSWAP Docker Security practices`_ for your
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1815 production Roundup instance.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1816
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1817 .. _OSWAP Docker Security practices:
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1818 https://cheatsheetseries.owasp.org/cheatsheets/Docker_Security_Cheat_Sheet.html
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1819
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1820 Building a Docker Container
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1821 ---------------------------
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1822
7441
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1823 You can build a docker container in one of 4 modes defined by the
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1824 ``source`` build-arg.
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1825
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1826 ``--build-arg="source=local"``
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1827 the default if no source is defined. Build using the version in
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1828 the source tree by running ``setup.py install``.
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1829
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1830 ``--build-arg="source=pypi"``
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1831 build the newest production release version deployed to pypi.
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1832 If you want to build using a pre-release, you can append
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1833 `pip version specifiers
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1834 <https://peps.python.org/pep-0440/#version-specifiers>`_ to
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1835 `pypi` without embedding any spaces. For example::
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1836
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1837 # install 2.2.0 if available or 2.2.0b1 or 2.2.0b2 etc.
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1838 --build-arg="source=pypi~=2.2.0b1"
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1839
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1840 # install only a 2.2.0 beta
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1841 --build-arg="source=pypi~=2.2.0b1,!=2.2.0"
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1842
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1843 Note that versions of Roundup before 2.2 may not run correctly
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1844 in a Docker container.
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1845
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1846 ``--build-arg="source=pip_local"``
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1847 Build using the version in the source tree by running ``pip
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1848 install``. This places some files (e.g. man pages, templates) in
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1849 different directories from the `local` install but is preferred
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1850 by some Python users.
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1851
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1852 ``--build-arg="source=pip_sdist"``
7659
e9a2b74150bd Update doc on --build-arg="source=pip_sdist" for docker.
John Rouillard <rouilj@ieee.org>
parents: 7643
diff changeset
1853 Disabled - hopefully it will be available in the future.
7441
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1854 This is meant for maintainer/developer use. It installs using
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1855 pip from a source distribution (sdist) tarball built by
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1856 following the RELEASE.txt. It is meant for testing
7659
e9a2b74150bd Update doc on --build-arg="source=pip_sdist" for docker.
John Rouillard <rouilj@ieee.org>
parents: 7643
diff changeset
1857 releases or building a docker image that installs a new pending
e9a2b74150bd Update doc on --build-arg="source=pip_sdist" for docker.
John Rouillard <rouilj@ieee.org>
parents: 7643
diff changeset
1858 source distribution release. Normal users/admins should not use it.
e9a2b74150bd Update doc on --build-arg="source=pip_sdist" for docker.
John Rouillard <rouilj@ieee.org>
parents: 7643
diff changeset
1859 Use ``local`` or ``pip_local`` instead.
7441
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1860
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1861 Build a docker container using the code in the current directory,
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1862 with this build command from the top of the source tree::
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1863
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1864 docker build -t roundup-app -f scripts/Docker/Dockerfile .
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1865
7441
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1866 Build a container using the newest production (non pre-release)
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1867 Roundup release on PyPI, by running::
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1868
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1869 docker build -t roundup-app --build-arg="source=pypi" \
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1870 -f scripts/Docker/Dockerfile .
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1871
7441
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1872 Change the ``build-arg`` for building in other modes.
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1873
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1874 The Dockerfile declares a single volume mounted at
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1875 ``/usr/src/app/tracker`` inside the container. You will mount
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1876 your tracker home directory at this location. The
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1877 ``/usr/src/app`` path can be changed by adding::
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1878
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1879 --build-arg="appdir=/new/path"
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1880
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1881 You can also add additional modules to the docker container by
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1882 using::
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1883
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1884 --build-arg="pip_mod=requests setproctitle"
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1885
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1886 Because of deficiencies in the docker program (see:
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1887 https://github.com/moby/moby/issues/29110#issuecomment-1100676306),
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1888 there is no way to determine the version of Python inside the
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1889 container and make that available as part of the build process. If
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1890 your build fails because the ``pythonversion does not match``, add the
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1891 suggested ``--build-arg`` to the ``docker build`` command line.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1892
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1893 .. _UID at image build time:
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1894
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1895 By default the container runs Roundup using UID 1000. By setting
7441
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1896 ``--build-arg="roundup_uid=2000"`` you can change the UID and
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1897 GID.
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1898
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1899 Configuring Roundup in the Container
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1900 ------------------------------------
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1901
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1902 .. caution::
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1903
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1904 Docker modifies iptables firewall rules. This allows access to the
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1905 container from your local network. `See the official documentation
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1906 for details
8060
f53fd57a0cf3 docs: update link to docker publish command.
John Rouillard <rouilj@ieee.org>
parents: 8054
diff changeset
1907 <https://docs.docker.com/reference/cli/docker/container/run/#publish>`_.
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1908 UFW rules are known to be be ignored (see:
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1909 https://github.com/moby/moby/issues/4737). Use ``-p
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1910 127.0.0.1:ext_port:container_port`` in your docker run commands or
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1911 implement suggestions like: https://github.com/chaifeng/ufw-docker.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1912
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1913 Once the docker image is created using one of the build commands
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1914 above, run an interactive session with::
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1915
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1916 docker run -it --rm -p 127.0.0.1:9017:8080 \
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1917 -v $PWD/tracker:/usr/src/app/tracker roundup-app:latest
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1918
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1919 The ``-v`` option maps a directory from the host into the docker
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1920 container. Note that uid 1000 is used by roundup by default. The uid
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1921 of the directory (and all files under it) must match the uid. You can
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1922 set the `UID at image build time`_. This
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1923 example assumes your tracker configs are in the tracker
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1924 subdirectory. Replace ``$PWD/tracker`` with the full path name to the
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1925 directory where the tracker home(s) are to be stored.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1926
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1927 The ``-p`` option maps an external port (9017) to proxy the roundup
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1928 server running at port 8080 to the outside. Note if you remove
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1929 ``127.0.0.1:`` from the -p argument, *any host* on the network will be
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1930 able to access the tracker at port 9017.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1931
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1932 If the tracker directory is empty, the docker container will prompt
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1933 you to `install a tracker template`_ (step 3) and prompt you for the
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1934 database type.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1935
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1936 .. _install a tracker template: #configuring-your-first-tracker
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1937
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1938 Then you need to configure the tracker by editing
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1939 ``template/config.ini``. Make sure that the tracker web setting ends
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1940 in ``/issues/`` See `Configuring your first tracker`_ and the top of
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1941 ``config.ini`` for other settings.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1942
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1943 Once you have configured the tracker, run another interactive session
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1944 to `initialise the tracker`_ (step 4) with::
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1945
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1946 docker run -it --rm -p 127.0.0.1:9017:8080 \
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1947 -v $PWD/tracker:/usr/src/app/tracker roundup-app:latest
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1948
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1949 this will initialise the database and attempt to start the server. If
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1950 that is successful, use control-c to exit the server.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1951
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1952 .. _initialise the tracker: #configuring-your-first-tracker
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1953
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1954 Now start the server non-interactively (note no `-it` option) with::
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1955
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1956 docker run -p 9017:8080 -d \
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1957 -v $PWD/tracker:/usr/src/app/tracker roundup-app:latest
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1958
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1959 Your tracker will be available at: ``http://yourhost:9017/issues/``.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1960
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1961 If you need to access your container while the server is running you
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1962 can use::
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1963
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1964 docker exec -it c0d5 sh
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1965
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1966 where ``c0d5`` is the id prefix for the running container obtained
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1967 from ``docker container ls``.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1968
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1969 You should place a web server in front of Roundup (in reverse proxy
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1970 mode) for production use. See the proxy_pass example below:
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1971
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1972 * `Nginx HTTP Server`_
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1973
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1974 You can expose the port directly to your intranet by removing ``127.0.0.1``
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1975 from the ``-p`` option. See `Stand-alone Web Server`_ for more details.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1976
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1977
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1978 Running Your Container
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1979 ----------------------
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1980
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1981 .. note::
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1982 The examples below use the locally built docker container
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1983 specification: ``roundup-app``. You can replace it with the
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1984 docker hub specification ``rounduptracker/roundup:latest``
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1985 (provided latest is newer than 2.3.0).
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1986
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1987 As of version 2.3.0 the Docker container has multiple entry points.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1988
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1989 Guided install
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1990 ~~~~~~~~~~~~~~
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1991
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1992 By default, running::
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1993
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1994 docker run -it --rm -p 127.0.0.1:9017:8080 \
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1995 -v $PWD/tracker:/usr/src/app/tracker roundup-app:latest
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1996
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1997 3 times will install, initialize and serve a Roundup tracker at
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1998 ``..../issues/`` using ``$PWD/tracker`` as the tracker home. This is the
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1999 "guided install" method described in `Configuring Roundup in the
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2000 Container`_.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2001
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2002 Arguments for roundup-server
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2003 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2004
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2005 Once you have initialized your tracker, any arguments placed at the
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2006 end of the ``docker run`` command are passed to the ``roundup-server``.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2007 These arguments **replace** the default arguments of ``issues=tracker``.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2008
7707
36c3acb4b49b feat: add help argument for docker image
John Rouillard <rouilj@ieee.org>
parents: 7700
diff changeset
2009 Brief Help
36c3acb4b49b feat: add help argument for docker image
John Rouillard <rouilj@ieee.org>
parents: 7700
diff changeset
2010 ~~~~~~~~~~
36c3acb4b49b feat: add help argument for docker image
John Rouillard <rouilj@ieee.org>
parents: 7700
diff changeset
2011
36c3acb4b49b feat: add help argument for docker image
John Rouillard <rouilj@ieee.org>
parents: 7700
diff changeset
2012 You can get help running the docker image::
36c3acb4b49b feat: add help argument for docker image
John Rouillard <rouilj@ieee.org>
parents: 7700
diff changeset
2013
36c3acb4b49b feat: add help argument for docker image
John Rouillard <rouilj@ieee.org>
parents: 7700
diff changeset
2014 docker run -it \
36c3acb4b49b feat: add help argument for docker image
John Rouillard <rouilj@ieee.org>
parents: 7700
diff changeset
2015 -v $PWD/tracker:/usr/src/app/tracker \
36c3acb4b49b feat: add help argument for docker image
John Rouillard <rouilj@ieee.org>
parents: 7700
diff changeset
2016 roundup-app:latest help
36c3acb4b49b feat: add help argument for docker image
John Rouillard <rouilj@ieee.org>
parents: 7700
diff changeset
2017
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2018 Invoking a Shell
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2019 ~~~~~~~~~~~~~~~~
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2020
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2021 You can invoke a shell inside the container without exec'ing into the
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2022 container using::
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2023
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2024 docker run -it \
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2025 -v $PWD/tracker:/usr/src/app/tracker \
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2026 roundup-app:latest shell
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2027
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2028 Then you can manually configure your tracker using ``roundup-admin -i
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2029 tracker`` using the directions for `Configuring your first tracker`_.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2030 This is also how you would access tools like ``roundup-gettext`` which
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2031 do not have direct entry points like ``admin`` for ``roundup-admin``
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2032 and ``demo`` for ``roundup-demo``.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2033
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2034 Invoke roundup-admin
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2035 ~~~~~~~~~~~~~~~~~~~~
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2036
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2037 You can run ``roundup-admin`` directly by using::
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2038
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2039 docker run -it \
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2040 -v $PWD/tracker:/usr/src/app/tracker \
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2041 roundup-app:latest admin -i tracker/tracker1
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2042
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2043 to start ``roundup-admin`` using the directory
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2044 ``$PWD/tracker/tracker1``. This is one way to create multiple trackers
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2045 in subdirectories. It is no different from starting a shell and
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2046 invoking ``roundup-admin`` manually.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2047
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2048 One possibly useful command is::
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2049
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2050
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2051 docker run -it \
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2052 -v $PWD/tracker:/usr/src/app/tracker \
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2053 roundup-app:latest admin templates
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2054
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2055 to list description of all the installed templates.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2056
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2057 Invoke roundup-demo
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2058 ~~~~~~~~~~~~~~~~~~~
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2059
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2060 Lastly you can::
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2061
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2062 docker run -it -p 127.0.0.1:8917:8080 \
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2063 -v $PWD/tracker:/usr/src/app/tracker \
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2064 roundup-app:latest demo anydbm responsive
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2065
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2066 to create a directory ``$PWD/tracker/demo`` and autoconfigure a server
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2067 using the anydbm backend based on the responsive tracker template.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2068 See `demo mode using docker`_ for steps to change the server port.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2069
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2070 Debugging
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2071 ~~~~~~~~~
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2072
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2073 If you add ``-e SHELL_DEBUG=1`` to the docker command, it sets the
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2074 ``SHELL_DEBUG`` environment variable which will enable debugging
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2075 output from the startup script.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2076
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2077 Running Multiple Trackers
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2078 --------------------------
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2079
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2080 If you want to run multiple trackers, create a subdirectory for each
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2081 tracker home under the volume mount point (``$PWD/tracker``). Then
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2082 invoke ``docker run`` passing the roundup-server tracker
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2083 specifications like::
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2084
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2085 docker run --rm -p 9017:8080 \
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2086 -v /.../issue.tracker:/usr/src/app/tracker \
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2087 roundup-app:latest tracker1=tracker/tracker1_home \
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2088 tracker2=tracker/tracker2_home
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2089
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2090 This will set up two trackers that can be reached at
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2091 ``http://yourhost:9017/tracker1/`` and
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2092 ``http://yourhost:9017/tracker2/``. The arguments after
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2093 ``roundup-app:latest`` are arguments including tracker paths that are
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2094 passed to ``roundup-server``.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2095
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2096 Docker-compose Deployment
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2097 -------------------------
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2098
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2099 If you want to run using the mysql backend, you can use docker-compose
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2100 with ``scripts/Docker/docker-compose.yml``. This will run Roundup and
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2101 MySQL in containers. Directions for building using docker-compose are
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2102 at the top of the yml file.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2103
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2104 Tags for Dockerhub Docker Images
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2105 --------------------------------
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2106
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2107 The docker images available from
7441
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
2108 https://hub.docker.com/r/rounduptracker/roundup are tagged with:
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
2109 version-build, version, and ``latest`` tags. Only production
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
2110 releases (not pre-releases) are tagged this way. For example, the
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
2111 tags when 2.3.0 is released will be:
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2112
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2113 ``rounduptracker/roundup:latest``
7500
c550b338616a Link to docker support from main web index. Docker support changes.
John Rouillard <rouilj@ieee.org>
parents: 7499
diff changeset
2114 is a moving tag that tracks the latest build with the newest
c550b338616a Link to docker support from main web index. Docker support changes.
John Rouillard <rouilj@ieee.org>
parents: 7499
diff changeset
2115 production version of Roundup using the current newest Alpine
c550b338616a Link to docker support from main web index. Docker support changes.
John Rouillard <rouilj@ieee.org>
parents: 7499
diff changeset
2116 release with the versions of Python packages at the time of
c550b338616a Link to docker support from main web index. Docker support changes.
John Rouillard <rouilj@ieee.org>
parents: 7499
diff changeset
2117 the build.
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2118
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2119 ``rounduptracker/roundup:2.3.0``
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2120 is a moving tag that tracks the latest build
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2121 of version 2.3.0 of Roundup. The Roundup software in this
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2122 build will match the 2.3.0 version released on PyPi, but the
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2123 underlying Alpine image or versions of the supporting Python
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2124 libraries (redis, xapian, psycopg2, ...) will change.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2125
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2126 ``rounduptracker/roundup:2.3.0-1``
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2127 is a static tag and marks the first build of the version
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2128 2.3.0 docker image. When a new release of the image is done,
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2129 it will get the tag ``2.3.0-2`` etc. This is an alternative to
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2130 pulling using a sha256 sum. However it is possible to
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2131 overwrite this image/tag. So it **does not** provide the same
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2132 security guarantees that using a sha256 sum does.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2133
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2134 In addition to the release tags, there may be one or more
7531
913a73b9fab5 Update for 2.3.0 release
John Rouillard <rouilj@ieee.org>
parents: 7524
diff changeset
2135 development tags available. All tags will include `devel`. For
7441
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
2136 example: ``rounduptracker/roundup:2.3.0b1-devel``,
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
2137 ``rounduptracker/roundup:devel``
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
2138
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
2139 You should not assume that any ``devel`` tag is static. They are
7500
c550b338616a Link to docker support from main web index. Docker support changes.
John Rouillard <rouilj@ieee.org>
parents: 7499
diff changeset
2140 mainly for use by Roundup developers/maintainers/testers for
c550b338616a Link to docker support from main web index. Docker support changes.
John Rouillard <rouilj@ieee.org>
parents: 7499
diff changeset
2141 testing. There may be alternate tags ending with ``-devel`` to
c550b338616a Link to docker support from main web index. Docker support changes.
John Rouillard <rouilj@ieee.org>
parents: 7499
diff changeset
2142 indicate builds from specific Mercurial versions/hashes. Also the
c550b338616a Link to docker support from main web index. Docker support changes.
John Rouillard <rouilj@ieee.org>
parents: 7499
diff changeset
2143 tag may be overwritten to change the underlying Python libraries
c550b338616a Link to docker support from main web index. Docker support changes.
John Rouillard <rouilj@ieee.org>
parents: 7499
diff changeset
2144 or images. Unless you like the bleeding edge, these should
c550b338616a Link to docker support from main web index. Docker support changes.
John Rouillard <rouilj@ieee.org>
parents: 7499
diff changeset
2145 **not** be used in production.
2069
d8c7fd205cd8 info for installing the CSV module
Richard Jones <richard@users.sourceforge.net>
parents: 2003
diff changeset
2146
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
2147 Maintenance
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
2148 ===========
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2149
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2150 Read the `Tasks section of the administration guide
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2151 <admin_guide.html#tasks>`_ for information about how to perform
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2152 common maintenance tasks on Roundup.
1049
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
2153
782
6f6eb43d9d86 Moved the MIGRATION text in with the rest of the docco, fixed up for 0.4.2
Richard Jones <richard@users.sourceforge.net>
parents: 753
diff changeset
2154
6f6eb43d9d86 Moved the MIGRATION text in with the rest of the docco, fixed up for 0.4.2
Richard Jones <richard@users.sourceforge.net>
parents: 753
diff changeset
2155 Upgrading
6f6eb43d9d86 Moved the MIGRATION text in with the rest of the docco, fixed up for 0.4.2
Richard Jones <richard@users.sourceforge.net>
parents: 753
diff changeset
2156 =========
6f6eb43d9d86 Moved the MIGRATION text in with the rest of the docco, fixed up for 0.4.2
Richard Jones <richard@users.sourceforge.net>
parents: 753
diff changeset
2157
882
b99948d32a2d clearing up ambiguous ref name
Richard Jones <richard@users.sourceforge.net>
parents: 798
diff changeset
2158 Read the separate `upgrading document`_, which describes the steps needed to
1089
43ab730ee194 instance -> tracker, node -> item
Richard Jones <richard@users.sourceforge.net>
parents: 1078
diff changeset
2159 upgrade existing tracker trackers for each version of Roundup that is
782
6f6eb43d9d86 Moved the MIGRATION text in with the rest of the docco, fixed up for 0.4.2
Richard Jones <richard@users.sourceforge.net>
parents: 753
diff changeset
2160 released.
6f6eb43d9d86 Moved the MIGRATION text in with the rest of the docco, fixed up for 0.4.2
Richard Jones <richard@users.sourceforge.net>
parents: 753
diff changeset
2161
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2162
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2163 Further Reading
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2164 ===============
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2165
3528
762d65fefea5 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 3524
diff changeset
2166 If you intend to use Roundup with anything other than the default
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2167 templates, if you would like to hack on Roundup, or if you would
7354
692242b3effd initial pass to change references to reference doc where needed.
John Rouillard <rouilj@ieee.org>
parents: 7350
diff changeset
2168 like implementation details, you should read `Customising
692242b3effd initial pass to change references to reference doc where needed.
John Rouillard <rouilj@ieee.org>
parents: 7350
diff changeset
2169 Roundup`_ and the `Roundup reference`_.
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2170
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2171
1576
80519db85eac More tweaks to the licensing to make the Debian folks happy :)
Richard Jones <richard@users.sourceforge.net>
parents: 1574
diff changeset
2172 Running Multiple Trackers
80519db85eac More tweaks to the licensing to make the Debian folks happy :)
Richard Jones <richard@users.sourceforge.net>
parents: 1574
diff changeset
2173 =========================
80519db85eac More tweaks to the licensing to make the Debian folks happy :)
Richard Jones <richard@users.sourceforge.net>
parents: 1574
diff changeset
2174
80519db85eac More tweaks to the licensing to make the Debian folks happy :)
Richard Jones <richard@users.sourceforge.net>
parents: 1574
diff changeset
2175 Things to think about before you jump off the deep end and install
80519db85eac More tweaks to the licensing to make the Debian folks happy :)
Richard Jones <richard@users.sourceforge.net>
parents: 1574
diff changeset
2176 multiple trackers, which involve additional URLs, user databases, email
80519db85eac More tweaks to the licensing to make the Debian folks happy :)
Richard Jones <richard@users.sourceforge.net>
parents: 1574
diff changeset
2177 addresses, databases to back up, etc.
80519db85eac More tweaks to the licensing to make the Debian folks happy :)
Richard Jones <richard@users.sourceforge.net>
parents: 1574
diff changeset
2178
80519db85eac More tweaks to the licensing to make the Debian folks happy :)
Richard Jones <richard@users.sourceforge.net>
parents: 1574
diff changeset
2179 1. Do you want a tracker per product you sell/support? You can just add
2161
98656054ccfa *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2069
diff changeset
2180 a new property to your issues called Product, and filter by that. See
98656054ccfa *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2069
diff changeset
2181 the customisation example `adding a new field to the classic schema`_.
1576
80519db85eac More tweaks to the licensing to make the Debian folks happy :)
Richard Jones <richard@users.sourceforge.net>
parents: 1574
diff changeset
2182 2. Do you want to track internal software development issues and customer
2186
3f89c8ffe4f1 version info in scripts
Richard Jones <richard@users.sourceforge.net>
parents: 2179
diff changeset
2183 support issues separately? You can just set up an additional "issue"
1576
80519db85eac More tweaks to the licensing to make the Debian folks happy :)
Richard Jones <richard@users.sourceforge.net>
parents: 1574
diff changeset
2184 class called "cust_issues" in the same tracker, mimicing the normal
2161
98656054ccfa *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2069
diff changeset
2185 "issue" class, but with different properties. See the customisation
98656054ccfa *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2069
diff changeset
2186 example `tracking different types of issues`_.
1576
80519db85eac More tweaks to the licensing to make the Debian folks happy :)
Richard Jones <richard@users.sourceforge.net>
parents: 1574
diff changeset
2187
80519db85eac More tweaks to the licensing to make the Debian folks happy :)
Richard Jones <richard@users.sourceforge.net>
parents: 1574
diff changeset
2188
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2189 Platform-Specific Notes
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2190 =======================
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2191
7887
35b4049ea2ad doc: fix platform notes hierarchy; don't use anydbm session db
John Rouillard <rouilj@ieee.org>
parents: 7863
diff changeset
2192
35b4049ea2ad doc: fix platform notes hierarchy; don't use anydbm session db
John Rouillard <rouilj@ieee.org>
parents: 7863
diff changeset
2193 Windows
35b4049ea2ad doc: fix platform notes hierarchy; don't use anydbm session db
John Rouillard <rouilj@ieee.org>
parents: 7863
diff changeset
2194 -------
35b4049ea2ad doc: fix platform notes hierarchy; don't use anydbm session db
John Rouillard <rouilj@ieee.org>
parents: 7863
diff changeset
2195
35b4049ea2ad doc: fix platform notes hierarchy; don't use anydbm session db
John Rouillard <rouilj@ieee.org>
parents: 7863
diff changeset
2196 .. index:: windows; choose non-default session/otk database
35b4049ea2ad doc: fix platform notes hierarchy; don't use anydbm session db
John Rouillard <rouilj@ieee.org>
parents: 7863
diff changeset
2197
35b4049ea2ad doc: fix platform notes hierarchy; don't use anydbm session db
John Rouillard <rouilj@ieee.org>
parents: 7863
diff changeset
2198 Configure session database
35b4049ea2ad doc: fix platform notes hierarchy; don't use anydbm session db
John Rouillard <rouilj@ieee.org>
parents: 7863
diff changeset
2199 ~~~~~~~~~~~~~~~~~~~~~~~~~~
35b4049ea2ad doc: fix platform notes hierarchy; don't use anydbm session db
John Rouillard <rouilj@ieee.org>
parents: 7863
diff changeset
2200
35b4049ea2ad doc: fix platform notes hierarchy; don't use anydbm session db
John Rouillard <rouilj@ieee.org>
parents: 7863
diff changeset
2201 By default the session and one time key (OTK) databases default to
35b4049ea2ad doc: fix platform notes hierarchy; don't use anydbm session db
John Rouillard <rouilj@ieee.org>
parents: 7863
diff changeset
2202 using anydbm as the session store. Because GNU dbm and Ndbm are
35b4049ea2ad doc: fix platform notes hierarchy; don't use anydbm session db
John Rouillard <rouilj@ieee.org>
parents: 7863
diff changeset
2203 available on Linux, this is a reasonable default. However Windows
35b4049ea2ad doc: fix platform notes hierarchy; don't use anydbm session db
John Rouillard <rouilj@ieee.org>
parents: 7863
diff changeset
2204 doesn't have compiled libraries for these databases. So it defaults to
35b4049ea2ad doc: fix platform notes hierarchy; don't use anydbm session db
John Rouillard <rouilj@ieee.org>
parents: 7863
diff changeset
2205 "dumb" dbm which is written in Python and is slow. So we recommend
35b4049ea2ad doc: fix platform notes hierarchy; don't use anydbm session db
John Rouillard <rouilj@ieee.org>
parents: 7863
diff changeset
2206 using `some other backend for your session database`_. SQLite or Redis
35b4049ea2ad doc: fix platform notes hierarchy; don't use anydbm session db
John Rouillard <rouilj@ieee.org>
parents: 7863
diff changeset
2207 can be used if you don't want to run a separate supported RDBMS
35b4049ea2ad doc: fix platform notes hierarchy; don't use anydbm session db
John Rouillard <rouilj@ieee.org>
parents: 7863
diff changeset
2208 database server.
35b4049ea2ad doc: fix platform notes hierarchy; don't use anydbm session db
John Rouillard <rouilj@ieee.org>
parents: 7863
diff changeset
2209
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2210 .. index:: windows; add Roundup to path
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2211
1649
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2212 Windows command-line tools
7887
35b4049ea2ad doc: fix platform notes hierarchy; don't use anydbm session db
John Rouillard <rouilj@ieee.org>
parents: 7863
diff changeset
2213 ~~~~~~~~~~~~~~~~~~~~~~~~~~
1649
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2214
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2215 To make the command-line tools accessible in Windows, you need to update
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2216 the "Path" environment variable in the Registry via a dialog box.
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2217
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2218 On Windows 2000 and later:
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2219
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2220 1) Press the "Start" button.
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2221 2) Choose "Settings"
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2222 3) Choose "Control Panel"
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2223 4) Choose "System"
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2224 5) Choose "Advanced"
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2225 6) Choose "Environmental Variables"
1746
9c1da921cd35 minor rest tweak
Richard Jones <richard@users.sourceforge.net>
parents: 1688
diff changeset
2226 7) Add: "<dir>\Scripts" to the "Path" environmental variable.
1649
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2227
6727
3f3ce3004013 issue2551206 - remove mention of roundup installer, fix up windows docs
John Rouillard <rouilj@ieee.org>
parents: 6663
diff changeset
2228 Where <dir> in 7) is the root directory (e.g., ``C:\Python27\Scripts``)
1649
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2229 of your Python installation.
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2230
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2231 I understand that in XP, 2) above is not needed as "Control
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2232 Panel" is directly accessible from "Start".
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2233
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2234 I do not believe this is possible to do in previous versions of Windows.
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2235
7608
cdc7490f510e docs: add mention of pyreadline3 under windows
John Rouillard <rouilj@ieee.org>
parents: 7603
diff changeset
2236 Use pip to install pyreadline3 for roundup-admin line editing
7887
35b4049ea2ad doc: fix platform notes hierarchy; don't use anydbm session db
John Rouillard <rouilj@ieee.org>
parents: 7863
diff changeset
2237
7608
cdc7490f510e docs: add mention of pyreadline3 under windows
John Rouillard <rouilj@ieee.org>
parents: 7603
diff changeset
2238
cdc7490f510e docs: add mention of pyreadline3 under windows
John Rouillard <rouilj@ieee.org>
parents: 7603
diff changeset
2239 If you install pyreadline3_ using pip, roundup-admin will support
cdc7490f510e docs: add mention of pyreadline3 under windows
John Rouillard <rouilj@ieee.org>
parents: 7603
diff changeset
2240 command line editing and history.
cdc7490f510e docs: add mention of pyreadline3 under windows
John Rouillard <rouilj@ieee.org>
parents: 7603
diff changeset
2241
cdc7490f510e docs: add mention of pyreadline3 under windows
John Rouillard <rouilj@ieee.org>
parents: 7603
diff changeset
2242 This will remove the dreaded::
cdc7490f510e docs: add mention of pyreadline3 under windows
John Rouillard <rouilj@ieee.org>
parents: 7603
diff changeset
2243
cdc7490f510e docs: add mention of pyreadline3 under windows
John Rouillard <rouilj@ieee.org>
parents: 7603
diff changeset
2244 Note: command history and editing not available
cdc7490f510e docs: add mention of pyreadline3 under windows
John Rouillard <rouilj@ieee.org>
parents: 7603
diff changeset
2245
cdc7490f510e docs: add mention of pyreadline3 under windows
John Rouillard <rouilj@ieee.org>
parents: 7603
diff changeset
2246 warning when starting roundup-admin.
1649
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2247
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2248 Windows Server
7887
35b4049ea2ad doc: fix platform notes hierarchy; don't use anydbm session db
John Rouillard <rouilj@ieee.org>
parents: 7863
diff changeset
2249 ~~~~~~~~~~~~~~
1576
80519db85eac More tweaks to the licensing to make the Debian folks happy :)
Richard Jones <richard@users.sourceforge.net>
parents: 1574
diff changeset
2250
3797
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2251 To have the Roundup web server start up when your machine boots up, there
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2252 are two different methods, the scheduler and installing the service.
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2253
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2254 .. index:: windows; use scheduler for email integration
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2255
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2256 .. _Using the Windows scheduler:
3797
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2257
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2258 1. Using the Windows scheduler
7887
35b4049ea2ad doc: fix platform notes hierarchy; don't use anydbm session db
John Rouillard <rouilj@ieee.org>
parents: 7863
diff changeset
2259 ''''''''''''''''''''''''''''''
3797
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2260
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2261 Set up the following in Scheduled Tasks (note, the following is for a
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2262 cygwin setup):
1576
80519db85eac More tweaks to the licensing to make the Debian folks happy :)
Richard Jones <richard@users.sourceforge.net>
parents: 1574
diff changeset
2263
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2264 Run
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2265 ``c:\cygwin\bin\bash.exe -c "roundup-server TheProject=/opt/roundup/trackers/support"``
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2266
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2267 Start In
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2268 ``C:\cygwin\opt\roundup\bin``
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2269
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2270 Schedule
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2271 At System Startup
1576
80519db85eac More tweaks to the licensing to make the Debian folks happy :)
Richard Jones <richard@users.sourceforge.net>
parents: 1574
diff changeset
2272
80519db85eac More tweaks to the licensing to make the Debian folks happy :)
Richard Jones <richard@users.sourceforge.net>
parents: 1574
diff changeset
2273 To have the Roundup mail gateway run periodically to poll a POP email address,
3797
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2274 set up the following in Scheduled Tasks:
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2275
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2276 Run
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2277 ``c:\cygwin\bin\bash.exe -c "roundup-mailgw /opt/roundup/trackers/support pop roundup:roundup@mail-server"``
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2278
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2279 Start In
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2280 ``C:\cygwin\opt\roundup\bin``
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2281
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2282 Schedule
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2283 Every 10 minutes from 5:00AM for 24 hours every day
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2284
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2285 Stop the task if it runs for 8 minutes
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2286
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2287
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2288 .. index:: windows; setup Roundup a service
3797
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2289
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2290 2. Installing the roundup server as a Windows service
7887
35b4049ea2ad doc: fix platform notes hierarchy; don't use anydbm session db
John Rouillard <rouilj@ieee.org>
parents: 7863
diff changeset
2291 '''''''''''''''''''''''''''''''''''''''''''''''''''''
3797
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2292
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2293 This is more Windows oriented and will make the Roundup server run as
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2294 soon as the PC starts up without any need for a login or such. It will
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2295 also be available in the normal Windows Administrative Tools.
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2296
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2297 For this you need first to create a service ini file containing the
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2298 relevant settings.
1588
1ac46e7e4150 more doc work - new improved overview doc
Richard Jones <richard@users.sourceforge.net>
parents: 1576
diff changeset
2299
3797
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2300 1. It is created if you execute the following command from within the
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2301 scripts directory (notice the use of backslashes)::
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2302
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2303 roundup-server -S -C <trackersdir>\server.ini -n <servername> -p 8080 -l <trackersdir>\trackerlog.log software=<trackersdir>\Software
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2304
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2305 where the item ``<trackersdir>`` is replaced with the physical directory
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2306 that hosts all of your trackers. The ``<servername>`` item is the name
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2307 of your roundup server PC, such as w2003srv or similar.
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2308
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2309 2. Next open the now created file ``C:\DATA\roundup\server.ini`` file
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2310 (if your ``<trackersdir>`` is ``C:\DATA\roundup``).
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2311 Check the entries for correctness, especially this one::
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2312
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2313 [trackers]
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2314 software = C:\DATA\Roundup\Software
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2315
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2316 (this is an example where the tracker is named software and its home is
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2317 ``C:\DATA\Roundup\Software``)
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2318
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2319 3. Next give the commands that actually installs and starts the service::
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2320
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2321 roundup-server -C C:\DATA\Roundup\server.ini -c install
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2322 roundup-server -c start
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2323
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2324 4. Finally open the AdministrativeTools/Services applet and locate the
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2325 Roundup service entry. Open its properties and change it to start
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2326 automatically instead of manually.
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2327
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2328 If you are using Apache as the webserver you might want to use it with
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2329 mod_python instead to serve out Roundup. In that case see the mod_python
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2330 instructions above for details.
1576
80519db85eac More tweaks to the licensing to make the Debian folks happy :)
Richard Jones <richard@users.sourceforge.net>
parents: 1574
diff changeset
2331
7887
35b4049ea2ad doc: fix platform notes hierarchy; don't use anydbm session db
John Rouillard <rouilj@ieee.org>
parents: 7863
diff changeset
2332 Linux
35b4049ea2ad doc: fix platform notes hierarchy; don't use anydbm session db
John Rouillard <rouilj@ieee.org>
parents: 7863
diff changeset
2333 -----
35b4049ea2ad doc: fix platform notes hierarchy; don't use anydbm session db
John Rouillard <rouilj@ieee.org>
parents: 7863
diff changeset
2334
35b4049ea2ad doc: fix platform notes hierarchy; don't use anydbm session db
John Rouillard <rouilj@ieee.org>
parents: 7863
diff changeset
2335 Make sure you read the instructions under `UNIX environment steps`_.
35b4049ea2ad doc: fix platform notes hierarchy; don't use anydbm session db
John Rouillard <rouilj@ieee.org>
parents: 7863
diff changeset
2336
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2337 Sendmail smrsh
7887
35b4049ea2ad doc: fix platform notes hierarchy; don't use anydbm session db
John Rouillard <rouilj@ieee.org>
parents: 7863
diff changeset
2338 ~~~~~~~~~~~~~~
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2339
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2340 If you use Sendmail's ``smrsh`` mechanism, you will need to tell
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2341 smrsh that roundup-mailgw is a valid/trusted mail handler
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2342 before it will work.
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2343
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2344 This is usually done via the following 2 steps:
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2345
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2346 1. make a symlink in ``/etc/smrsh`` called ``roundup-mailgw``
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2347 which points to the full path of your actual ``roundup-mailgw``
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2348 script.
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2349
1089
43ab730ee194 instance -> tracker, node -> item
Richard Jones <richard@users.sourceforge.net>
parents: 1078
diff changeset
2350 2. change your alias to ``"|roundup-mailgw <tracker_home>"``
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2351
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2352
1574
67af854f4c33 more installation hintage
Richard Jones <richard@users.sourceforge.net>
parents: 1571
diff changeset
2353
67af854f4c33 more installation hintage
Richard Jones <richard@users.sourceforge.net>
parents: 1571
diff changeset
2354 Solaris
67af854f4c33 more installation hintage
Richard Jones <richard@users.sourceforge.net>
parents: 1571
diff changeset
2355 -------
67af854f4c33 more installation hintage
Richard Jones <richard@users.sourceforge.net>
parents: 1571
diff changeset
2356
67af854f4c33 more installation hintage
Richard Jones <richard@users.sourceforge.net>
parents: 1571
diff changeset
2357 You'll need to build Python.
67af854f4c33 more installation hintage
Richard Jones <richard@users.sourceforge.net>
parents: 1571
diff changeset
2358
1939
1303c208419d some updates that were sitting on disk
Richard Jones <richard@users.sourceforge.net>
parents: 1913
diff changeset
2359 Make sure you read the instructions under `UNIX environment steps`_.
1303c208419d some updates that were sitting on disk
Richard Jones <richard@users.sourceforge.net>
parents: 1913
diff changeset
2360
1574
67af854f4c33 more installation hintage
Richard Jones <richard@users.sourceforge.net>
parents: 1571
diff changeset
2361
2972
dd558120d927 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2945
diff changeset
2362 Problems? Testing your Python...
dd558120d927 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2945
diff changeset
2363 ================================
dd558120d927 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2945
diff changeset
2364
dd558120d927 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2945
diff changeset
2365 .. note::
6297
a635a60ffb84 Remove standalone pytest run_tests.py bundle
John Rouillard <rouilj@ieee.org>
parents: 6265
diff changeset
2366 The ``run_tests.py`` script is not packaged in Roundup's source
7580
13af5f28207d docs: document dependencies required for testing
John Rouillard <rouilj@ieee.org>
parents: 7562
diff changeset
2367 distribution anymore. You should install:
7581
9dd27f40de4c docs: document dependencies required for testing
John Rouillard <rouilj@ieee.org>
parents: 7580
diff changeset
2368
9dd27f40de4c docs: document dependencies required for testing
John Rouillard <rouilj@ieee.org>
parents: 7580
diff changeset
2369 * pytest,
9dd27f40de4c docs: document dependencies required for testing
John Rouillard <rouilj@ieee.org>
parents: 7580
diff changeset
2370 * requests, and
9dd27f40de4c docs: document dependencies required for testing
John Rouillard <rouilj@ieee.org>
parents: 7580
diff changeset
2371 * mock
9dd27f40de4c docs: document dependencies required for testing
John Rouillard <rouilj@ieee.org>
parents: 7580
diff changeset
2372
7580
13af5f28207d docs: document dependencies required for testing
John Rouillard <rouilj@ieee.org>
parents: 7562
diff changeset
2373 using your distributions package manger or using pip/pip2/pip3 to
7581
9dd27f40de4c docs: document dependencies required for testing
John Rouillard <rouilj@ieee.org>
parents: 7580
diff changeset
2374 install pytest etc. for your Python version. See the
9dd27f40de4c docs: document dependencies required for testing
John Rouillard <rouilj@ieee.org>
parents: 7580
diff changeset
2375 `administration guide`_ for details.
2972
dd558120d927 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2945
diff changeset
2376
4317
15834821b8c7 - fix explicit python version description...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4315
diff changeset
2377 Remember to have a database user 'rounduptest' prepared (with
15834821b8c7 - fix explicit python version description...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4315
diff changeset
2378 password 'rounduptest'). This user
4315
cfb01b2bc730 Fix documentation on user required to run the tests, fixes issue2550618.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4249
diff changeset
2379 must have at least the rights to create and drop databases.
cfb01b2bc730 Fix documentation on user required to run the tests, fixes issue2550618.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4249
diff changeset
2380 Documentation: details on `adding MySQL users`_,
cfb01b2bc730 Fix documentation on user required to run the tests, fixes issue2550618.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4249
diff changeset
2381 for PostgreSQL you want to call the ``createuser`` command with the
cfb01b2bc730 Fix documentation on user required to run the tests, fixes issue2550618.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4249
diff changeset
2382 ``-d`` option to allow database creation.
cfb01b2bc730 Fix documentation on user required to run the tests, fixes issue2550618.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4249
diff changeset
2383
7374
72de757edf78 issue2551220 - In installation.txt clarify source directory.
John Rouillard <rouilj@ieee.org>
parents: 7354
diff changeset
2384 This can only be done if you `install the source`_ distribution
72de757edf78 issue2551220 - In installation.txt clarify source directory.
John Rouillard <rouilj@ieee.org>
parents: 7354
diff changeset
2385 (steps 1-3) or from a `mercurial checkout
72de757edf78 issue2551220 - In installation.txt clarify source directory.
John Rouillard <rouilj@ieee.org>
parents: 7354
diff changeset
2386 <../code.html#get-sources>`_. It will not work if you used `pip
72de757edf78 issue2551220 - In installation.txt clarify source directory.
John Rouillard <rouilj@ieee.org>
parents: 7354
diff changeset
2387 install` as the test suite is not installed. Once you've unpacked
72de757edf78 issue2551220 - In installation.txt clarify source directory.
John Rouillard <rouilj@ieee.org>
parents: 7354
diff changeset
2388 roundup's source, if you have pytest installed, run ``python -m
72de757edf78 issue2551220 - In installation.txt clarify source directory.
John Rouillard <rouilj@ieee.org>
parents: 7354
diff changeset
2389 pytest test`` in the Roundup source directory and make sure there
72de757edf78 issue2551220 - In installation.txt clarify source directory.
John Rouillard <rouilj@ieee.org>
parents: 7354
diff changeset
2390 are no errors. If there are errors, please let us know!
2972
dd558120d927 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2945
diff changeset
2391
7399
deb8e7e6d66d Skip redis tests if unable to communicate with the server.
John Rouillard <rouilj@ieee.org>
parents: 7374
diff changeset
2392 Note that redis tests uses database 15 of the redis server running on
deb8e7e6d66d Skip redis tests if unable to communicate with the server.
John Rouillard <rouilj@ieee.org>
parents: 7374
diff changeset
2393 localhost.The tests verify that the database is empty before the redis
deb8e7e6d66d Skip redis tests if unable to communicate with the server.
John Rouillard <rouilj@ieee.org>
parents: 7374
diff changeset
2394 tests start. If you use a password on your redis database it can be
deb8e7e6d66d Skip redis tests if unable to communicate with the server.
John Rouillard <rouilj@ieee.org>
parents: 7374
diff changeset
2395 specified in the ``pytest_redis_pw`` environment variable when you run
deb8e7e6d66d Skip redis tests if unable to communicate with the server.
John Rouillard <rouilj@ieee.org>
parents: 7374
diff changeset
2396 the test.
deb8e7e6d66d Skip redis tests if unable to communicate with the server.
John Rouillard <rouilj@ieee.org>
parents: 7374
diff changeset
2397
1287
5402a6f2a754 Added quotes around python interpreter in windows bat [SF#623963]
Richard Jones <richard@users.sourceforge.net>
parents: 1282
diff changeset
2398 .. _`user guide`: user_guide.html
4949
c3a90535f7a7 Backed out changeset 4a3a35192ad1
John Rouillard <rouilj@ieee.org>
parents: 4948
diff changeset
2399 .. _`roundup specification`: spec.html
7354
692242b3effd initial pass to change references to reference doc where needed.
John Rouillard <rouilj@ieee.org>
parents: 7350
diff changeset
2400 .. _`tracker configuration`: reference.html#tracker-configuration
1245
d8c98af869ff merge from maint-0-5
Richard Jones <richard@users.sourceforge.net>
parents: 1244
diff changeset
2401 .. _`customisation documentation`: customizing.html
7354
692242b3effd initial pass to change references to reference doc where needed.
John Rouillard <rouilj@ieee.org>
parents: 7350
diff changeset
2402 .. _`Roundup reference`: reference.html
692242b3effd initial pass to change references to reference doc where needed.
John Rouillard <rouilj@ieee.org>
parents: 7350
diff changeset
2403 .. _`reference documentation`: reference.html
5300
d8ed32b297e2 Update to migrating backend and tweak to install doc.
John Rouillard <rouilj@ieee.org>
parents: 5140
diff changeset
2404 .. _`preventing spam`: customizing.html#preventing-spam
2161
98656054ccfa *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2069
diff changeset
2405 .. _`Adding a new field to the classic schema`:
98656054ccfa *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2069
diff changeset
2406 customizing.html#adding-a-new-field-to-the-classic-schema
7887
35b4049ea2ad doc: fix platform notes hierarchy; don't use anydbm session db
John Rouillard <rouilj@ieee.org>
parents: 7863
diff changeset
2407 .. _`some other backend for your session database`:
35b4049ea2ad doc: fix platform notes hierarchy; don't use anydbm session db
John Rouillard <rouilj@ieee.org>
parents: 7863
diff changeset
2408 admin_guide.html#configuring-session-databases
2161
98656054ccfa *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2069
diff changeset
2409 .. _`Tracking different types of issues`:
98656054ccfa *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2069
diff changeset
2410 customizing.html#tracking-different-types-of-issues
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2411 .. _`customising roundup`: customizing.html
882
b99948d32a2d clearing up ambiguous ref name
Richard Jones <richard@users.sourceforge.net>
parents: 798
diff changeset
2412 .. _`upgrading document`: upgrading.html
2003
a291bf753037 maintenance -> admin guide
Richard Jones <richard@users.sourceforge.net>
parents: 1965
diff changeset
2413 .. _`administration guide`: admin_guide.html
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2414 .. _`What does Roundup install`: admin_guide.html#what-does-roundup-install
6663
e63f514bb0e6 issue2551201 - Update references to psycopg2
John Rouillard <rouilj@ieee.org>
parents: 6653
diff changeset
2415 .. _`doc/postgresql.txt`: postgresql.html
e63f514bb0e6 issue2551201 - Update references to psycopg2
John Rouillard <rouilj@ieee.org>
parents: 6653
diff changeset
2416 .. _`doc/mysql.txt`: mysql.html
2554
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
2417
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
2418
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
2419 .. _External hyperlink targets:
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
2420
6391
205bc1d27985 Added links for pyjwt, markdown libs, rearranged links.
John Rouillard <rouilj@ieee.org>
parents: 6390
diff changeset
2421
205bc1d27985 Added links for pyjwt, markdown libs, rearranged links.
John Rouillard <rouilj@ieee.org>
parents: 6390
diff changeset
2422
205bc1d27985 Added links for pyjwt, markdown libs, rearranged links.
John Rouillard <rouilj@ieee.org>
parents: 6390
diff changeset
2423 .. _`adding MySQL users`:
205bc1d27985 Added links for pyjwt, markdown libs, rearranged links.
John Rouillard <rouilj@ieee.org>
parents: 6390
diff changeset
2424 https://dev.mysql.com/doc/refman/8.0/en/creating-accounts.html
205bc1d27985 Added links for pyjwt, markdown libs, rearranged links.
John Rouillard <rouilj@ieee.org>
parents: 6390
diff changeset
2425 .. _apache: https://httpd.apache.org/
6458
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
2426 .. _brotli: https://pypi.org/project/Brotli/
8080
d1c29284ccd9 feat: issue2551287 - roundup-gettext extracts strings from detectors/extensions
John Rouillard <rouilj@ieee.org>
parents: 8071
diff changeset
2427 .. _`developer's guide`: developers.html
8237
57325fea9982 issue2551116 - Replace xmlrpclib (xmlrpc.client) with defusedxml.
John Rouillard <rouilj@ieee.org>
parents: 8112
diff changeset
2428 .. _defusedxml: https://pypi.org/project/defusedxml/
6391
205bc1d27985 Added links for pyjwt, markdown libs, rearranged links.
John Rouillard <rouilj@ieee.org>
parents: 6390
diff changeset
2429 .. _docutils: https://pypi.org/project/docutils/
5337
01dabc0483b0 more changes to prep for 1.6 release.
John Rouillard <rouilj@ieee.org>
parents: 5321
diff changeset
2430 .. _flup: https://pypi.org/project/flup/
6391
205bc1d27985 Added links for pyjwt, markdown libs, rearranged links.
John Rouillard <rouilj@ieee.org>
parents: 6390
diff changeset
2431 .. _gpg: https://www.gnupg.org/software/gpgme/index.html
8111
394f72021dad docs: replace redirecting url's with target
John Rouillard <rouilj@ieee.org>
parents: 8080
diff changeset
2432 .. _jinja2: https://palletsprojects.com/projects/jinja/
6391
205bc1d27985 Added links for pyjwt, markdown libs, rearranged links.
John Rouillard <rouilj@ieee.org>
parents: 6390
diff changeset
2433 .. _markdown: https://python-markdown.github.io/
205bc1d27985 Added links for pyjwt, markdown libs, rearranged links.
John Rouillard <rouilj@ieee.org>
parents: 6390
diff changeset
2434 .. _markdown2: https://github.com/trentm/python-markdown2
205bc1d27985 Added links for pyjwt, markdown libs, rearranged links.
John Rouillard <rouilj@ieee.org>
parents: 6390
diff changeset
2435 .. _mistune: https://pypi.org/project/mistune/
205bc1d27985 Added links for pyjwt, markdown libs, rearranged links.
John Rouillard <rouilj@ieee.org>
parents: 6390
diff changeset
2436 .. _mod_python: https://github.com/grisha/mod_python
5891
6e341009593b Deprecate mod_python issue2551005
John Rouillard <rouilj@ieee.org>
parents: 5878
diff changeset
2437 .. _mod_wsgi: https://pypi.org/project/mod-wsgi/
5510
e2978ed3b550 update link to new mysqlclient module and recommend update in upgrading.txt
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5494
diff changeset
2438 .. _MySQLdb: https://pypi.org/project/mysqlclient/
8487
b09ef85f0da6 feat: add nanoid pkg trace_id gen and decorator for setting processName
John Rouillard <rouilj@ieee.org>
parents: 8461
diff changeset
2439 .. _nanoid: https://pypi.org/project/nanoid/
6391
205bc1d27985 Added links for pyjwt, markdown libs, rearranged links.
John Rouillard <rouilj@ieee.org>
parents: 6390
diff changeset
2440 .. _Olson tz database: https://www.iana.org/time-zones
8080
d1c29284ccd9 feat: issue2551287 - roundup-gettext extracts strings from detectors/extensions
John Rouillard <rouilj@ieee.org>
parents: 8071
diff changeset
2441 .. _polib: https://polib.readthedocs.io
6663
e63f514bb0e6 issue2551201 - Update references to psycopg2
John Rouillard <rouilj@ieee.org>
parents: 6653
diff changeset
2442 .. _Psycopg2: https://www.psycopg.org/
6391
205bc1d27985 Added links for pyjwt, markdown libs, rearranged links.
John Rouillard <rouilj@ieee.org>
parents: 6390
diff changeset
2443 .. _pyjwt: https://pypi.org/project/PyJWT/
6419
4d321d52d67d fix broken link for pyopenssl
John Rouillard <rouilj@ieee.org>
parents: 6391
diff changeset
2444 .. _pyopenssl: https://pypi.org/project/pyOpenSSL/
7608
cdc7490f510e docs: add mention of pyreadline3 under windows
John Rouillard <rouilj@ieee.org>
parents: 7603
diff changeset
2445 .. _pyreadline3: https://pypi.org/project/pyreadline3/
5756
e48b039b0ec0 issue2550966: fix suboptimal links in docs.
John Rouillard <rouilj@ieee.org>
parents: 5610
diff changeset
2446 .. _pysqlite: https://pysqlite.org/
6391
205bc1d27985 Added links for pyjwt, markdown libs, rearranged links.
John Rouillard <rouilj@ieee.org>
parents: 6390
diff changeset
2447 .. _pytz: https://pypi.org/project/pytz/
205bc1d27985 Added links for pyjwt, markdown libs, rearranged links.
John Rouillard <rouilj@ieee.org>
parents: 6390
diff changeset
2448 .. _pywin32: https://pypi.org/project/pywin32/
6814
3f60a71b0812 Summary: Support selecion session/otk data store. Add redis as data store.
John Rouillard <rouilj@ieee.org>
parents: 6797
diff changeset
2449 .. _Redis: https://redis.io
3f60a71b0812 Summary: Support selecion session/otk data store. Add redis as data store.
John Rouillard <rouilj@ieee.org>
parents: 6797
diff changeset
2450 .. _redis-py: https://pypi.org/project/redis/
7065
48da482d7d93 reference requests library for imap_oauth in roundup-mailgw
John Rouillard <rouilj@ieee.org>
parents: 7042
diff changeset
2451 .. _requests: https://requests.readthedocs.io/en/latest/
7348
2c5af1c920fc replace whoosh link original was a redirect.
John Rouillard <rouilj@ieee.org>
parents: 7347
diff changeset
2452 .. _Whoosh: https://whoosh.readthedocs.io/en/latest/
6391
205bc1d27985 Added links for pyjwt, markdown libs, rearranged links.
John Rouillard <rouilj@ieee.org>
parents: 6390
diff changeset
2453 .. _Xapian: https://xapian.org/
6458
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
2454 .. _zstd: https://pypi.org/project/zstd/

Roundup Issue Tracker: http://roundup-tracker.org/