annotate doc/installation.txt @ 7723:8147f6deac9f

fix(db): Make using pg_service work again. When I did the merge of schema support I broke pg_service.conf support by replacing get_database_name with db_schema_split. This commit fixes it. Also this commit returns the schema if one is specified in pg_service.conf. back_postgresql.py: Replace calls to db_schema_split() with get_database_schema_names() (new name for get_database_name()). Rename db_schema_split to _db_schema_split. It now returns a tuple (dbname, schema) rather than a list. It is used only by get_database_schema_names() which also returns tuples. get_database_schema_names() can also get schema info for the service (if present) as specified by pg_service.conf. Add get_database_user() to get the user from either RDBMS_USER or pg_service.conf. (User needed for creating schema, so not needed before schema patch. import re at the top of file and remove lower import. Remove some schema code from db_command as it's not needed. The database conection is done to either postgresql or template1 existing databases. This command never connects to the roundp specified db. test/test_postgresql.py: Reorganize top level imports, add import os. Replace import of db_schema_split with get_database_schema_names. Also replace calls to db_schema_split. Create new Opener for the service file. Set PGSERVICEFILE to point to test/pg_service.conf. Add three new classes to test Service: 1) using regular db 2) using schema within db 3) Unable to parse schema name from pg_service.conf. The last doesn't need a db. Number 1 and 2 reuse the tests in ROTest to verify db connectivity. test/pg_service.conf: three service connections for: db only, db and schema, and incorrectly specified schema test cases. doc/upgrading.txt: updated to current status. Included example schema definition in service file.
author John Rouillard <rouilj@ieee.org>
date Thu, 28 Dec 2023 15:13:42 -0500
parents 3071db43bfb6
children 68c04cc8edf7
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``
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
77 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
78
7610
cc4f2a1d271c docs: replace ' with " in windows tarfile examples
John Rouillard <rouilj@ieee.org>
parents: 7609
diff changeset
79 * 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
80
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
81 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
82 4. ``python3 demo.py``
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
83
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
84 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
85 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
86 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
87 are set up:
7137
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
88
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
89 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
90 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
91 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
92 access to the tracker
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
93
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
94 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
95 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
96 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
97 emails.
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
98
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
99 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
100 install new demo trackers.
7137
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
101
4553614a2b22 move For ... Impatient section up, add directions, style footnote
John Rouillard <rouilj@ieee.org>
parents: 7136
diff changeset
102 .. [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
103 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
104 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
105 ``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
106 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
107 then re-run the demo.py program.
1218
4c9882cb16a3 more docco work
Richard Jones <richard@users.sourceforge.net>
parents: 1170
diff changeset
108
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
109 .. _demo mode using docker:
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
110
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
111 Running in Demo Mode with Docker
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
112 --------------------------------
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
113
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
114 You can either:
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
115
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
116 * 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
117 ``rounduptracker/roundup:latest``
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
118
7453
feb970243b97 Clarify docker run commands and link to admin manual section
John Rouillard <rouilj@ieee.org>
parents: 7441
diff changeset
119 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
120
feb970243b97 Clarify docker run commands and link to admin manual section
John Rouillard <rouilj@ieee.org>
parents: 7441
diff changeset
121 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
122 $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
123
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
124 or
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
125
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
126 * 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
127
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
128 * build a local docker container using::
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 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
131
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
132 (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
133 details)
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
134
7453
feb970243b97 Clarify docker run commands and link to admin manual section
John Rouillard <rouilj@ieee.org>
parents: 7441
diff changeset
135 and start demo mode with::
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
136
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
137 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
138 $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
139
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
140 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
141 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
142
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
143 .. caution::
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
144 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
145 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
146 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
147 ``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
148 the container [1]_.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
149
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
150 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
151 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
152 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
153 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
154 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
155
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
156 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
157 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
158 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
159 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
160 to worry about this.)
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
161
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
162 For example::
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
163
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
164 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
165 --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
166 rounduptracker/roundup:latest demo
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 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
169 URL.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
170
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
171 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
172 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
173
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
174 Prerequisites
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
175 =============
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
176
7438
116ea5ce06ab issue2551269: Add warning abut Python 2 support lifetime
John Rouillard <rouilj@ieee.org>
parents: 7399
diff changeset
177 Roundup requires Python 2.7 [3]_ or 3.6 or newer with a functioning anydbm
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
178 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
179 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
180 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
181 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
182 many fixes to serious bugs.
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
183
7521
763807c584ed Use double backquotes not single.
John Rouillard <rouilj@ieee.org>
parents: 7520
diff changeset
184 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
185 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
186 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
187
3296
d5fa5a0b5216 some minimalist docs for Xapian
Richard Jones <richard@users.sourceforge.net>
parents: 3153
diff changeset
188 Optional Components
d5fa5a0b5216 some minimalist docs for Xapian
Richard Jones <richard@users.sourceforge.net>
parents: 3153
diff changeset
189 ===================
d5fa5a0b5216 some minimalist docs for Xapian
Richard Jones <richard@users.sourceforge.net>
parents: 3153
diff changeset
190
3297
8f7dc283bfa5 some more Xapian stuff (doc, test fixes)
Richard Jones <richard@users.sourceforge.net>
parents: 3296
diff changeset
191 You may optionally install and use:
3296
d5fa5a0b5216 some minimalist docs for Xapian
Richard Jones <richard@users.sourceforge.net>
parents: 3153
diff changeset
192
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
193 An RDBMS
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
194 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
195 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
196 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
197 always be available.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
198
3623
bef78d81b79c added optional prerequisite: pytz
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3571
diff changeset
199 Timezone Definitions
3731
e6ef9abfe403 fix pytz requirement version and download URL for latest package
Richard Jones <richard@users.sourceforge.net>
parents: 3730
diff changeset
200 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
201 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
202 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
203 This is optional but strongly suggested.
5321
4566360871dc Raises python requirement to 2.7.
Bernhard Reiter <bernhard@intevation.de>
parents: 5300
diff changeset
204
3296
d5fa5a0b5216 some minimalist docs for Xapian
Richard Jones <richard@users.sourceforge.net>
parents: 3153
diff changeset
205 Xapian full-text indexer
d5fa5a0b5216 some minimalist docs for Xapian
Richard Jones <richard@users.sourceforge.net>
parents: 3153
diff changeset
206 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
207 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
208 anticipating a large number of issues (> 5000).
3296
d5fa5a0b5216 some minimalist docs for Xapian
Richard Jones <richard@users.sourceforge.net>
parents: 3153
diff changeset
209
3297
8f7dc283bfa5 some more Xapian stuff (doc, test fixes)
Richard Jones <richard@users.sourceforge.net>
parents: 3296
diff changeset
210 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
211 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
212 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
213
4378
477f2a47cbca - Indexer Xapian, made Xapian 1.2 compatible.
Bernhard Reiter <Bernhard.Reiter@intevation.de>
parents: 4355
diff changeset
214 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
215
5108
67fad01d2009 issue2550653: xapian search, stemming is not working
John Rouillard <rouilj@ieee.org>
parents: 5096
diff changeset
216 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
217 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
218 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
219 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
220
5096
e74c3611b138 - issue2550636, issue2550909: Added support for Whoosh indexer.
John Rouillard <rouilj@ieee.org>
parents: 5083
diff changeset
221 Whoosh full-text indexer
e74c3611b138 - issue2550636, issue2550909: Added support for Whoosh indexer.
John Rouillard <rouilj@ieee.org>
parents: 5083
diff changeset
222 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
223 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
224 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
225 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
226 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
227
e74c3611b138 - issue2550636, issue2550909: Added support for Whoosh indexer.
John Rouillard <rouilj@ieee.org>
parents: 5083
diff changeset
228 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
229 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
230 command if the tracker has existing data.
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 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
233 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
234 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
235 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
236
3885
d4163100f4f3 add pyopenssl to optional components
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3830
diff changeset
237 pyopenssl
d4163100f4f3 add pyopenssl to optional components
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3830
diff changeset
238 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
239 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
240 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
241 unnecessary.
d4163100f4f3 add pyopenssl to optional components
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3830
diff changeset
242
5494
b7fa56ced601 use gpg module instead of pyme module for PGP encryption
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5486
diff changeset
243 gpg
b7fa56ced601 use gpg module instead of pyme module for PGP encryption
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5486
diff changeset
244 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
245 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
246 configured, you can require email to be cryptographically signed
586679a314f7 role checking for PGP mail and docs
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3885
diff changeset
247 before roundup will allow it to make modifications to issues.
586679a314f7 role checking for PGP mail and docs
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3885
diff changeset
248
5013
c1443d96ac94 jinja2: optional requirement added to installation.txt and link to wiki page.
Bernhard Reiter <bernhard@intevation.de>
parents: 4949
diff changeset
249 jinja2
c1443d96ac94 jinja2: optional requirement added to installation.txt and link to wiki page.
Bernhard Reiter <bernhard@intevation.de>
parents: 4949
diff changeset
250 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
251 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
252 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
253
6097
90a1470edbea added markdown rendering support using either markdown2 or markdown
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5940
diff changeset
254 docutils
6391
205bc1d27985 Added links for pyjwt, markdown libs, rearranged links.
John Rouillard <rouilj@ieee.org>
parents: 6390
diff changeset
255 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
256 package installed.
90a1470edbea added markdown rendering support using either markdown2 or markdown
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5940
diff changeset
257
6099
55c56ceacb8e escape HTML tags in markdown content
Christof Meerwald <cmeerw@cmeerw.org>
parents: 6097
diff changeset
258 markdown, markdown2 or mistune
7518
060fd6366655 Recod version of markdown2 that works.
John Rouillard <rouilj@ieee.org>
parents: 7503
diff changeset
259 To use markdown rendering you need to have the markdown_,
060fd6366655 Recod version of markdown2 that works.
John Rouillard <rouilj@ieee.org>
parents: 7503
diff changeset
260 markdown2_ (2.4.9 known to be broken, 2.3.3 known to work),
7562
cd30fa0d6aec label mistune as python3 only support.
John Rouillard <rouilj@ieee.org>
parents: 7531
diff changeset
261 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
262
6458
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
263 zstd, brotli
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
264 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
265 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
266 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
267 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
268 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
269 client.
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
270
6814
3f60a71b0812 Summary: Support selecion session/otk data store. Add redis as data store.
John Rouillard <rouilj@ieee.org>
parents: 6797
diff changeset
271 redis
3f60a71b0812 Summary: Support selecion session/otk data store. Add redis as data store.
John Rouillard <rouilj@ieee.org>
parents: 6797
diff changeset
272 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
273 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
274 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
275 `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
276 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
277
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
278 pyjwt
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
279 To use JWT (JSON web tokens) for login (experimental), install `pyjwt`_
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
280 (v1.7.1, v2.0.1 tested). If you don't have it installed, JWT's
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
281 are not supported.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
282
7609
044dea25c1e2 docs: mention pywin32 in label
John Rouillard <rouilj@ieee.org>
parents: 7608
diff changeset
283 pywin32 - Windows Service
4686
4e740f02e165 Remove pywin32 installation dependency by porting portalocker.py to ctypes.
anatoly techtonik <techtonik@gmail.com>
parents: 4672
diff changeset
284 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
285 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
286
7608
cdc7490f510e docs: add mention of pyreadline3 under windows
John Rouillard <rouilj@ieee.org>
parents: 7603
diff changeset
287 pyreadline3
cdc7490f510e docs: add mention of pyreadline3 under windows
John Rouillard <rouilj@ieee.org>
parents: 7603
diff changeset
288 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
289 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
290
7065
48da482d7d93 reference requests library for imap_oauth in roundup-mailgw
John Rouillard <rouilj@ieee.org>
parents: 7042
diff changeset
291 requests
48da482d7d93 reference requests library for imap_oauth in roundup-mailgw
John Rouillard <rouilj@ieee.org>
parents: 7042
diff changeset
292 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
293 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
294
6814
3f60a71b0812 Summary: Support selecion session/otk data store. Add redis as data store.
John Rouillard <rouilj@ieee.org>
parents: 6797
diff changeset
295 .. _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
296 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
297
7438
116ea5ce06ab issue2551269: Add warning abut Python 2 support lifetime
John Rouillard <rouilj@ieee.org>
parents: 7399
diff changeset
298 .. [3] Do not use Python 2 for new installs. The continuous
116ea5ce06ab issue2551269: Add warning abut Python 2 support lifetime
John Rouillard <rouilj@ieee.org>
parents: 7399
diff changeset
299 integration and other services used for developing Roundup
116ea5ce06ab issue2551269: Add warning abut Python 2 support lifetime
John Rouillard <rouilj@ieee.org>
parents: 7399
diff changeset
300 are dropping support for Python 2. Also optional packages
116ea5ce06ab issue2551269: Add warning abut Python 2 support lifetime
John Rouillard <rouilj@ieee.org>
parents: 7399
diff changeset
301 are dropping Python 2 support. As a result Python 2 may
116ea5ce06ab issue2551269: Add warning abut Python 2 support lifetime
John Rouillard <rouilj@ieee.org>
parents: 7399
diff changeset
302 not be supported for many more release cycles.
116ea5ce06ab issue2551269: Add warning abut Python 2 support lifetime
John Rouillard <rouilj@ieee.org>
parents: 7399
diff changeset
303
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
304 Installing Roundup
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
305 ==================
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
306
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
307 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
308 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
309 installing it, see `For The Really Impatient`_.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
310
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
311 .. 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
312 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
313 -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
314 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
315 `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
316 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
317 environment from the Roundup web site or pypi.
2742
8ac87d4092e2 more install doc tweaks
Richard Jones <richard@users.sourceforge.net>
parents: 2741
diff changeset
318
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
319 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
320 there are multiple ways to install Roundup.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
321
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
322 * `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
323 recommended standard.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
324 * `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
325 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
326 it also increases complexity as well.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
327 * Use a prebuilt docker container from
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
328 ``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
329 `Running Your Container`_.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
330 * 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
331 and following the steps in `Docker Support`_.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
332
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
333 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
334
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
335 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
336 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
337 for all install methods.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
338 3. Optionally `configure a web interface`_.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
339 4. Optionally `configure an email interface`_.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
340 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
341 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
342
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
343 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
344 `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
345
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
346
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
347 Standard Installation
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
348 ----------------------
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
349
6739
00fe67eb8a91 Update locations templates and locale files are stored
John Rouillard <rouilj@ieee.org>
parents: 6738
diff changeset
350 Installation of Roundup using Python3 in a virtual environment is
7303
9bd9d06e2f2c Misc doc fixes.
John Rouillard <rouilj@ieee.org>
parents: 7302
diff changeset
351 recommended. Use::
6739
00fe67eb8a91 Update locations templates and locale files are stored
John Rouillard <rouilj@ieee.org>
parents: 6738
diff changeset
352
00fe67eb8a91 Update locations templates and locale files are stored
John Rouillard <rouilj@ieee.org>
parents: 6738
diff changeset
353 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
354
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
355 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
356 using::
6739
00fe67eb8a91 Update locations templates and locale files are stored
John Rouillard <rouilj@ieee.org>
parents: 6738
diff changeset
357
00fe67eb8a91 Update locations templates and locale files are stored
John Rouillard <rouilj@ieee.org>
parents: 6738
diff changeset
358 . /path/to/environment/roundup/bin/activate
00fe67eb8a91 Update locations templates and locale files are stored
John Rouillard <rouilj@ieee.org>
parents: 6738
diff changeset
359
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
360 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
361 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
362
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
363 python3 -m pip install roundup
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
364
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
365 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
366
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
367 roundup-admin help
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
368
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
369 and see the help text.
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 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
372 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
373 full path. For example::
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 /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
376
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
377 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
378 Python environment. However, for now continue with
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
379 `configuring your first tracker`_.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
380
7374
72de757edf78 issue2551220 - In installation.txt clarify source directory.
John Rouillard <rouilj@ieee.org>
parents: 7354
diff changeset
381 .. _downloaded and unpacked the source:
72de757edf78 issue2551220 - In installation.txt clarify source directory.
John Rouillard <rouilj@ieee.org>
parents: 7354
diff changeset
382
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
383 Installing from downloaded source
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
384 ---------------------------------
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
385
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
386 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
387 into a virtual environment.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
388
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
389 .. _current development version: ../code.html
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 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
392 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
393 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
394
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
395 sudo python3 setup.py install
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 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
398 the command scripts into ``/usr/bin``
1590
198dbefc1d5a more installation doc cleanups
Richard Jones <richard@users.sourceforge.net>
parents: 1588
diff changeset
399
198dbefc1d5a more installation doc cleanups
Richard Jones <richard@users.sourceforge.net>
parents: 1588
diff changeset
400 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
401 than ``/usr/bin``, then specify the preferred location with
3949
29dfb873b32e Small documentation cleanup
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3935
diff changeset
402 ``--install-scripts``. For example, to install them in
1590
198dbefc1d5a more installation doc cleanups
Richard Jones <richard@users.sourceforge.net>
parents: 1588
diff changeset
403 ``/opt/roundup/bin``::
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
404
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
405 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
406
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
407 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
408 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
409 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
410
198dbefc1d5a more installation doc cleanups
Richard Jones <richard@users.sourceforge.net>
parents: 1588
diff changeset
411 Configuring your first tracker
7340
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 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
415 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
416 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
417 in the following steps.
1590
198dbefc1d5a more installation doc cleanups
Richard Jones <richard@users.sourceforge.net>
parents: 1588
diff changeset
418
198dbefc1d5a more installation doc cleanups
Richard Jones <richard@users.sourceforge.net>
parents: 1588
diff changeset
419 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
420 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
421 home":
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
422
1089
43ab730ee194 instance -> tracker, node -> item
Richard Jones <richard@users.sourceforge.net>
parents: 1078
diff changeset
423 a. (Optional) If you intend to keep your roundup trackers
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
424 under one top level directory which does not exist yet,
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
425 you should create that directory now. Example::
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
426
1089
43ab730ee194 instance -> tracker, node -> item
Richard Jones <richard@users.sourceforge.net>
parents: 1078
diff changeset
427 mkdir /opt/roundup/trackers
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
428
6174
5522c950a2e4 Add indexing for roundup-admin references.
John Rouillard <rouilj@ieee.org>
parents: 6168
diff changeset
429 .. index:: roundup-admin; install subcommand
5522c950a2e4 Add indexing for roundup-admin references.
John Rouillard <rouilj@ieee.org>
parents: 6168
diff changeset
430
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
431 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
432 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
433 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
434 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
435 below. The questions will be something like (you may have more
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
436 templates or backends available)::
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
437
1089
43ab730ee194 instance -> tracker, node -> item
Richard Jones <richard@users.sourceforge.net>
parents: 1078
diff changeset
438 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
439 Templates: minimal, jinja2, classic, responsive, devel
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
440 Select template [classic]: classic
6766
c27fc7f499c7 Update install with all current templates and mandatory backends.
John Rouillard <rouilj@ieee.org>
parents: 6739
diff changeset
441 Back ends: anydbm, sqlite
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
442 Select backend [anydbm]: anydbm
738
7e093cbaaa98 split instance initialisation into two steps...
Richard Jones <richard@users.sourceforge.net>
parents: 729
diff changeset
443
2818
2317e43609cb remove bsddb; suggest using sqlite better than metakit
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2742
diff changeset
444 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
445 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
446 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
447
7303
9bd9d06e2f2c Misc doc fixes.
John Rouillard <rouilj@ieee.org>
parents: 7302
diff changeset
448 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
449 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
450
1089
43ab730ee194 instance -> tracker, node -> item
Richard Jones <richard@users.sourceforge.net>
parents: 1078
diff changeset
451 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
452 initial schema. At a minimum, you must set "tracker :: web"
9bd9d06e2f2c Misc doc fixes.
John Rouillard <rouilj@ieee.org>
parents: 7302
diff changeset
453 (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
454 "mail :: host", and "mail :: domain". You should also
7303
9bd9d06e2f2c Misc doc fixes.
John Rouillard <rouilj@ieee.org>
parents: 7302
diff changeset
455 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
456 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
457 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
458 configuration`_ section of the `reference documentation`_.
1245
d8c98af869ff merge from maint-0-5
Richard Jones <richard@users.sourceforge.net>
parents: 1244
diff changeset
459
1574
67af854f4c33 more installation hintage
Richard Jones <richard@users.sourceforge.net>
parents: 1571
diff changeset
460 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
461 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
462 "tracker :: web" variable to::
1244
8dd4f736370b merge from maintenance branch
Richard Jones <richard@users.sourceforge.net>
parents: 1240
diff changeset
463
3303
520eef0e0e91 fix installation docs referring to old-style configuration variables
Richard Jones <richard@users.sourceforge.net>
parents: 3297
diff changeset
464 web = http://localhost:8080/support/
1244
8dd4f736370b merge from maintenance branch
Richard Jones <richard@users.sourceforge.net>
parents: 1240
diff changeset
465
1310
ff7b08d9ceb5 more URL trailing-/ requirements
Richard Jones <richard@users.sourceforge.net>
parents: 1300
diff changeset
466 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
467 See the `Roundup reference`_ for details on configuration and schema
2409
Richard Jones <richard@users.sourceforge.net>
parents: 2401
diff changeset
468 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
469 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
470 for this stuff now.
738
7e093cbaaa98 split instance initialisation into two steps...
Richard Jones <richard@users.sourceforge.net>
parents: 729
diff changeset
471
6174
5522c950a2e4 Add indexing for roundup-admin references.
John Rouillard <rouilj@ieee.org>
parents: 6168
diff changeset
472 .. index:: roundup-admin; initialise subcommand
5522c950a2e4 Add indexing for roundup-admin references.
John Rouillard <rouilj@ieee.org>
parents: 6168
diff changeset
473
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
474 c. Initialise the tracker database with ``roundup-admin initialise``.
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
475 You will need to supply an admin password at this step. You will be
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
476 prompted::
738
7e093cbaaa98 split instance initialisation into two steps...
Richard Jones <richard@users.sourceforge.net>
parents: 729
diff changeset
477
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
478 Admin Password:
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
479 Confirm:
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
480
7719
3071db43bfb6 feat: issue2550852 - support using a specified PostgreSQL db schema
John Rouillard <rouilj@ieee.org>
parents: 7712
diff changeset
481 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
482 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
483 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
484 dropped and re-created.
2401
a405124c3847 doc fixes
Richard Jones <richard@users.sourceforge.net>
parents: 2258
diff changeset
485
4792
1a0cf0345465 issue2550789 document how to initialize a tracker without exposing the admin password
John Rouillard <rouilj@ieee.org>
parents: 4688
diff changeset
486 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
487 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
488 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
489 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
490
1590
198dbefc1d5a more installation doc cleanups
Richard Jones <richard@users.sourceforge.net>
parents: 1588
diff changeset
491 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
492 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
493 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
494 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
495 ``[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
496 ``'http://localhost:8080/support/'``, run::
1244
8dd4f736370b merge from maintenance branch
Richard Jones <richard@users.sourceforge.net>
parents: 1240
diff changeset
497
1574
67af854f4c33 more installation hintage
Richard Jones <richard@users.sourceforge.net>
parents: 1571
diff changeset
498 roundup-server support=/opt/roundup/trackers/support
1244
8dd4f736370b merge from maintenance branch
Richard Jones <richard@users.sourceforge.net>
parents: 1240
diff changeset
499
8dd4f736370b merge from maintenance branch
Richard Jones <richard@users.sourceforge.net>
parents: 1240
diff changeset
500 then direct your web browser at:
8dd4f736370b merge from maintenance branch
Richard Jones <richard@users.sourceforge.net>
parents: 1240
diff changeset
501
1845
3c6dd167a744 Fix typo in server address [SF#822967].
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1839
diff changeset
502 http://localhost:8080/support/
1244
8dd4f736370b merge from maintenance branch
Richard Jones <richard@users.sourceforge.net>
parents: 1240
diff changeset
503
8dd4f736370b merge from maintenance branch
Richard Jones <richard@users.sourceforge.net>
parents: 1240
diff changeset
504 and you should see the tracker interface.
1049
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
505
5138
c54720396f40 issue2550882. Reported by Karl-Philipp Richter. Fixed
John Rouillard <rouilj@ieee.org>
parents: 5108
diff changeset
506 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
507 8080 (make sure you change the "tracker :: web" option to match) use::
1049
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
508
5138
c54720396f40 issue2550882. Reported by Karl-Philipp Richter. Fixed
John Rouillard <rouilj@ieee.org>
parents: 5108
diff changeset
509 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
510
c54720396f40 issue2550882. Reported by Karl-Philipp Richter. Fixed
John Rouillard <rouilj@ieee.org>
parents: 5108
diff changeset
511 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
512 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
513
7438
116ea5ce06ab issue2551269: Add warning abut Python 2 support lifetime
John Rouillard <rouilj@ieee.org>
parents: 7399
diff changeset
514 .. [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
515 web" for specifying a section and setting.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
516
1221
778297033003 cleanup of install docco
Richard Jones <richard@users.sourceforge.net>
parents: 1218
diff changeset
517 Choosing Your Template
778297033003 cleanup of install docco
Richard Jones <richard@users.sourceforge.net>
parents: 1218
diff changeset
518 ----------------------
778297033003 cleanup of install docco
Richard Jones <richard@users.sourceforge.net>
parents: 1218
diff changeset
519
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
520 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
521 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
522 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
523 additional templates that you create or download.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
524
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
525 .. _classic tracker:
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
526
1221
778297033003 cleanup of install docco
Richard Jones <richard@users.sourceforge.net>
parents: 1218
diff changeset
527 Classic Template
778297033003 cleanup of install docco
Richard Jones <richard@users.sourceforge.net>
parents: 1218
diff changeset
528 ~~~~~~~~~~~~~~~~
778297033003 cleanup of install docco
Richard Jones <richard@users.sourceforge.net>
parents: 1218
diff changeset
529
7302
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
530 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
531 Specification`_. It holds issues which have priorities and
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
532 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
533 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
534
1227
92d8e1aad2e9 added mention of the new "minimal" template...
Richard Jones <richard@users.sourceforge.net>
parents: 1221
diff changeset
535 Minimal Template
92d8e1aad2e9 added mention of the new "minimal" template...
Richard Jones <richard@users.sourceforge.net>
parents: 1221
diff changeset
536 ~~~~~~~~~~~~~~~~
92d8e1aad2e9 added mention of the new "minimal" template...
Richard Jones <richard@users.sourceforge.net>
parents: 1221
diff changeset
537
92d8e1aad2e9 added mention of the new "minimal" template...
Richard Jones <richard@users.sourceforge.net>
parents: 1221
diff changeset
538 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
539 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
540 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
541 slate for you to create your tracker on.
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
542
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
543 Other Templates
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
544 ~~~~~~~~~~~~~~~
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
545
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
546 There are three other templates distributed with Roundup:
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
547
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
548 devel
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
549 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
550 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
551 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
552 them, with perhaps a few customisations.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
553
7302
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
554 responsive
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
555 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
556 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
557 bootstrap (https://github.com/twbs/bootstrap) in templates and
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
558 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
559 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
560 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
561 template).
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
562
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
563 jinja2
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
564 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
565 Jinja2 for templating and Twitter bootstrap for responsive markup.
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
566 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
567 page https://wiki.roundup-tracker.org/Jinja2 for updates
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
568 between releases.
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
569
d2633821fe07 update doc on supplied templates
John Rouillard <rouilj@ieee.org>
parents: 7301
diff changeset
570 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
571 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
572
6163
c2fd254c9257 Doc updates/indexing.
John Rouillard <rouilj@ieee.org>
parents: 6099
diff changeset
573 .. index:: database; choosing your backend
1221
778297033003 cleanup of install docco
Richard Jones <richard@users.sourceforge.net>
parents: 1218
diff changeset
574
778297033003 cleanup of install docco
Richard Jones <richard@users.sourceforge.net>
parents: 1218
diff changeset
575 Choosing Your Backend
778297033003 cleanup of install docco
Richard Jones <richard@users.sourceforge.net>
parents: 1218
diff changeset
576 ---------------------
778297033003 cleanup of install docco
Richard Jones <richard@users.sourceforge.net>
parents: 1218
diff changeset
577
778297033003 cleanup of install docco
Richard Jones <richard@users.sourceforge.net>
parents: 1218
diff changeset
578 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
579
f2c588128202 Clarify support for basic FTS all backends; augment native FTS desc.
John Rouillard <rouilj@ieee.org>
parents: 7522
diff changeset
580 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
581 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
582 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
583
f2c588128202 Clarify support for basic FTS all backends; augment native FTS desc.
John Rouillard <rouilj@ieee.org>
parents: 7522
diff changeset
584 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
585 limitations:
1221
778297033003 cleanup of install docco
Richard Jones <richard@users.sourceforge.net>
parents: 1218
diff changeset
586
2179
5aa74f9879ac rework the backend selection bit
Richard Jones <richard@users.sourceforge.net>
parents: 2161
diff changeset
587 ========== =========== ===== ==============================
7523
f2c588128202 Clarify support for basic FTS all backends; augment native FTS desc.
John Rouillard <rouilj@ieee.org>
parents: 7522
diff changeset
588 Name Speed Users Support
2179
5aa74f9879ac rework the backend selection bit
Richard Jones <richard@users.sourceforge.net>
parents: 2161
diff changeset
589 ========== =========== ===== ==============================
5aa74f9879ac rework the backend selection bit
Richard Jones <richard@users.sourceforge.net>
parents: 2161
diff changeset
590 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
591 sqlite Fastest Few Always available
6663
e63f514bb0e6 issue2551201 - Update references to psycopg2
John Rouillard <rouilj@ieee.org>
parents: 6653
diff changeset
592 postgresql Fast Many Needs install/admin (psycopg2_)
2179
5aa74f9879ac rework the backend selection bit
Richard Jones <richard@users.sourceforge.net>
parents: 2161
diff changeset
593 mysql Fast Many Needs install/admin (MySQLdb_)
5aa74f9879ac rework the backend selection bit
Richard Jones <richard@users.sourceforge.net>
parents: 2161
diff changeset
594 ========== =========== ===== ==============================
5aa74f9879ac rework the backend selection bit
Richard Jones <richard@users.sourceforge.net>
parents: 2161
diff changeset
595
7522
bbcdc7c92787 Add blurb for anydbm backend; clarify workding for SQLite backend.
John Rouillard <rouilj@ieee.org>
parents: 7521
diff changeset
596 **anydbm**
bbcdc7c92787 Add blurb for anydbm backend; clarify workding for SQLite backend.
John Rouillard <rouilj@ieee.org>
parents: 7521
diff changeset
597 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
598 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
599 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
600 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
601 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
602 (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
603 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
604 **sqlite**
7522
bbcdc7c92787 Add blurb for anydbm backend; clarify workding for SQLite backend.
John Rouillard <rouilj@ieee.org>
parents: 7521
diff changeset
605 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
606 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
607 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
608 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
609 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
610
b476fef16ccc fixed support for pysqlite2 (version 2.1.0 is the minimum version supported)
Richard Jones <richard@users.sourceforge.net>
parents: 3722
diff changeset
611 SQLite is supported via PySQLite versions 1.1.7, 2.1.0 and sqlite3 (the last
b476fef16ccc fixed support for pysqlite2 (version 2.1.0 is the minimum version supported)
Richard Jones <richard@users.sourceforge.net>
parents: 3722
diff changeset
612 being bundled with Python 2.5+)
3794
f5ddd1639a15 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 3754
diff changeset
613
f5ddd1639a15 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 3754
diff changeset
614 Installed SQLite should be the latest version available (3.3.8 is known
f5ddd1639a15 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 3754
diff changeset
615 to work, 3.1.3 is known to have problems).
6588
91ab3e0ffcd0 Summary: Add test cases for sqlite fts
John Rouillard <rouilj@ieee.org>
parents: 6586
diff changeset
616
7698
4e37a7833708 doc: add FTS5 requirement for sqlite backend.
John Rouillard <rouilj@ieee.org>
parents: 7659
diff changeset
617 Installation of Roundup 2.2.0 or newer requires that the installed
4e37a7833708 doc: add FTS5 requirement for sqlite backend.
John Rouillard <rouilj@ieee.org>
parents: 7659
diff changeset
618 SQLite supports FTS5. FTS5 was supported in release 3.9.0 in October
4e37a7833708 doc: add FTS5 requirement for sqlite backend.
John Rouillard <rouilj@ieee.org>
parents: 7659
diff changeset
619 2015. However some vendors choose not to include it. You can check
4e37a7833708 doc: add FTS5 requirement for sqlite backend.
John Rouillard <rouilj@ieee.org>
parents: 7659
diff changeset
620 your SQLite by using the command line::
4e37a7833708 doc: add FTS5 requirement for sqlite backend.
John Rouillard <rouilj@ieee.org>
parents: 7659
diff changeset
621
4e37a7833708 doc: add FTS5 requirement for sqlite backend.
John Rouillard <rouilj@ieee.org>
parents: 7659
diff changeset
622 echo 'pragma compile_options' | sqlite3 | grep FTS5
4e37a7833708 doc: add FTS5 requirement for sqlite backend.
John Rouillard <rouilj@ieee.org>
parents: 7659
diff changeset
623
4e37a7833708 doc: add FTS5 requirement for sqlite backend.
John Rouillard <rouilj@ieee.org>
parents: 7659
diff changeset
624 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
625
7523
f2c588128202 Clarify support for basic FTS all backends; augment native FTS desc.
John Rouillard <rouilj@ieee.org>
parents: 7522
diff changeset
626 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
627 <admin_guide.html#sqlite-details>`_. This
6588
91ab3e0ffcd0 Summary: Add test cases for sqlite fts
John Rouillard <rouilj@ieee.org>
parents: 6586
diff changeset
628 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
629 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
630 **postgresql**
6663
e63f514bb0e6 issue2551201 - Update references to psycopg2
John Rouillard <rouilj@ieee.org>
parents: 6653
diff changeset
631 Backend for popular RDBMS PostgreSQL. You must read
e63f514bb0e6 issue2551201 - Update references to psycopg2
John Rouillard <rouilj@ieee.org>
parents: 6653
diff changeset
632 `doc/postgresql.txt`_ for additional installation steps and
e63f514bb0e6 issue2551201 - Update references to psycopg2
John Rouillard <rouilj@ieee.org>
parents: 6653
diff changeset
633 requirements. You must also configure
3666
8304a1c1cc98 encourage use of latest psycopg
Richard Jones <richard@users.sourceforge.net>
parents: 3647
diff changeset
634 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
635 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
636
f2c588128202 Clarify support for basic FTS all backends; augment native FTS desc.
John Rouillard <rouilj@ieee.org>
parents: 7522
diff changeset
637 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
638 capability
f2c588128202 Clarify support for basic FTS all backends; augment native FTS desc.
John Rouillard <rouilj@ieee.org>
parents: 7522
diff changeset
639 <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
640 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
641 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
642 **mysql**
6663
e63f514bb0e6 issue2551201 - Update references to psycopg2
John Rouillard <rouilj@ieee.org>
parents: 6653
diff changeset
643 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
644 additional installation steps and requirements. You must also
e63f514bb0e6 issue2551201 - Update references to psycopg2
John Rouillard <rouilj@ieee.org>
parents: 6653
diff changeset
645 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
646
2179
5aa74f9879ac rework the backend selection bit
Richard Jones <richard@users.sourceforge.net>
parents: 2161
diff changeset
647 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
648 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
649 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
650 guide`_.
1221
778297033003 cleanup of install docco
Richard Jones <richard@users.sourceforge.net>
parents: 1218
diff changeset
651
2401
a405124c3847 doc fixes
Richard Jones <richard@users.sourceforge.net>
parents: 2258
diff changeset
652 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
653 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
654 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
655 privileges to create databases.
a405124c3847 doc fixes
Richard Jones <richard@users.sourceforge.net>
parents: 2258
diff changeset
656
1221
778297033003 cleanup of install docco
Richard Jones <richard@users.sourceforge.net>
parents: 1218
diff changeset
657
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
658 Configure a Web Interface
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
659 =========================
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
660
7310
ac6403bfcb1f add guidance onchoosing web deployment method
John Rouillard <rouilj@ieee.org>
parents: 7303
diff changeset
661 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
662 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
663 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
664 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
665
ac6403bfcb1f add guidance onchoosing web deployment method
John Rouillard <rouilj@ieee.org>
parents: 7303
diff changeset
666 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
667 lower traffic sites.
ac6403bfcb1f add guidance onchoosing web deployment method
John Rouillard <rouilj@ieee.org>
parents: 7303
diff changeset
668
ac6403bfcb1f add guidance onchoosing web deployment method
John Rouillard <rouilj@ieee.org>
parents: 7303
diff changeset
669 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
670 framework.
ac6403bfcb1f add guidance onchoosing web deployment method
John Rouillard <rouilj@ieee.org>
parents: 7303
diff changeset
671
ac6403bfcb1f add guidance onchoosing web deployment method
John Rouillard <rouilj@ieee.org>
parents: 7303
diff changeset
672 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
673 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
674
ac6403bfcb1f add guidance onchoosing web deployment method
John Rouillard <rouilj@ieee.org>
parents: 7303
diff changeset
675 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
676 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
677 in an internet facing application.
ac6403bfcb1f add guidance onchoosing web deployment method
John Rouillard <rouilj@ieee.org>
parents: 7303
diff changeset
678
ac6403bfcb1f add guidance onchoosing web deployment method
John Rouillard <rouilj@ieee.org>
parents: 7303
diff changeset
679 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
680 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
681 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
682 will perform better.
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
683
6555
34cbd0e633d2 Added FastCGI deployment info, updated Docker docs; docker-compose added
John Rouillard <rouilj@ieee.org>
parents: 6522
diff changeset
684 .. contents::
34cbd0e633d2 Added FastCGI deployment info, updated Docker docs; docker-compose added
John Rouillard <rouilj@ieee.org>
parents: 6522
diff changeset
685 :depth: 1
34cbd0e633d2 Added FastCGI deployment info, updated Docker docs; docker-compose added
John Rouillard <rouilj@ieee.org>
parents: 6522
diff changeset
686 :local:
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
687
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
688 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
689 - 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
690 configure your system in some way - see `platform-specific notes`_.
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
691
6163
c2fd254c9257 Doc updates/indexing.
John Rouillard <rouilj@ieee.org>
parents: 6099
diff changeset
692 .. index:: pair: web interface; cgi
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
693
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
694 Web Server cgi-bin
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
695 ------------------
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
696
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
697 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
698 restrict access to your tracker to only use HTTPS. Access will be slower
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
699 than through the `stand-alone web server`_ though.
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
700
3754
9f4dd27ae843 documentation cleanup from Luke Ross (patch [SF#1594860])
Richard Jones <richard@users.sourceforge.net>
parents: 3736
diff changeset
701 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
702 the ``roundup.cgi`` script to fix the first line.
0f2678eeeac6 cgi-bin install note
Richard Jones <richard@users.sourceforge.net>
parents: 1747
diff changeset
703
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
704 .. index:: windows; IIS cgi installation
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
705
1540
3e65577ad6d7 minor changes
Richard Jones <richard@users.sourceforge.net>
parents: 1528
diff changeset
706 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
707 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
708
3e65577ad6d7 minor changes
Richard Jones <richard@users.sourceforge.net>
parents: 1528
diff changeset
709 adsutil.vbs set w3svc/AllowPathInfoForScriptMappings TRUE
3e65577ad6d7 minor changes
Richard Jones <richard@users.sourceforge.net>
parents: 1528
diff changeset
710
3799
ac4da2670516 trim trailing spaces
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3797
diff changeset
711 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
712 or ``c:\winnt\system32\inetsrv\adminsamples\`` or
3e65577ad6d7 minor changes
Richard Jones <richard@users.sourceforge.net>
parents: 1528
diff changeset
713 ``c:\winnt\system32\inetsrv\adminscripts\`` depending on your installation.
3e65577ad6d7 minor changes
Richard Jones <richard@users.sourceforge.net>
parents: 1528
diff changeset
714
6370
45e8d10a9609 Update links in documentation
John Rouillard <rouilj@ieee.org>
parents: 6297
diff changeset
715 See:
45e8d10a9609 Update links in documentation
John Rouillard <rouilj@ieee.org>
parents: 6297
diff changeset
716
7136
a67f55c42476 fix links.
John Rouillard <rouilj@ieee.org>
parents: 7124
diff changeset
717 https://learn.microsoft.com/en-us/iis/web-dev-reference/server-variables
6370
45e8d10a9609 Update links in documentation
John Rouillard <rouilj@ieee.org>
parents: 6297
diff changeset
718
2988
f4023f1cc1d6 apply IE caching "fix" to automatically serve up all pages expired
Richard Jones <richard@users.sourceforge.net>
parents: 2979
diff changeset
719 More information about ISS setup may be found at:
f4023f1cc1d6 apply IE caching "fix" to automatically serve up all pages expired
Richard Jones <richard@users.sourceforge.net>
parents: 2979
diff changeset
720
7712
a03f8f681992 doc: fix links: 302/302, images from lfw.org, wayback for sc
John Rouillard <rouilj@ieee.org>
parents: 7707
diff changeset
721 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
722
7311
4bbd1316db00 document location of frontends when installed and in source
John Rouillard <rouilj@ieee.org>
parents: 7310
diff changeset
723 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
724 (``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
725 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
726 tell it where your tracker home is. You can do this either:
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
727
3303
520eef0e0e91 fix installation docs referring to old-style configuration variables
Richard Jones <richard@users.sourceforge.net>
parents: 3297
diff changeset
728 Through an environment variable
520eef0e0e91 fix installation docs referring to old-style configuration variables
Richard Jones <richard@users.sourceforge.net>
parents: 3297
diff changeset
729 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
730 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
731
520eef0e0e91 fix installation docs referring to old-style configuration variables
Richard Jones <richard@users.sourceforge.net>
parents: 3297
diff changeset
732 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
733 Add your instance to the TRACKER_HOMES variable as ``'name': 'home'``
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
734
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
735 The "name" part of the configuration will appear in the URL and identifies the
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
736 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
737 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
738 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
739 tracker config "tracker :: web" variable, so make sure they match. The "home"
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
740 part of the configuration is the tracker home directory.
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
741
2665
7d6dda802ca0 cgi install tip
Richard Jones <richard@users.sourceforge.net>
parents: 2594
diff changeset
742 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
743 ``.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
744 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
745 couple lines to your Apache configuration::
3799
ac4da2670516 trim trailing spaces
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3797
diff changeset
746
2665
7d6dda802ca0 cgi install tip
Richard Jones <richard@users.sourceforge.net>
parents: 2594
diff changeset
747 <Location /path/to/roundup>
7d6dda802ca0 cgi install tip
Richard Jones <richard@users.sourceforge.net>
parents: 2594
diff changeset
748 SetHandler cgi-script
7d6dda802ca0 cgi install tip
Richard Jones <richard@users.sourceforge.net>
parents: 2594
diff changeset
749 </Location>
7d6dda802ca0 cgi install tip
Richard Jones <richard@users.sourceforge.net>
parents: 2594
diff changeset
750
7d6dda802ca0 cgi install tip
Richard Jones <richard@users.sourceforge.net>
parents: 2594
diff changeset
751
4324
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
752 CGI-bin for Limited-Access Hosting
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
753 ----------------------------------
4324
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
754
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
755 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
756 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
757 ``.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
758
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
759 1. Install flup_
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
760 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
761 containing::
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
762
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
763 #!/usr/bin/env python
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
764
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
765 # 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
766 # installed Roundup
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
767 #import sys
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
768 #sys.path.append('...')
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
769
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
770 # 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
771 #import cgitb
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
772 #cgitb.enable()
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
773
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
774 # obtain the WSGI request dispatcher
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
775 from roundup.cgi.wsgi_handler import RequestDispatcher
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
776 tracker_home = '/path/to/tracker/home'
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
777 app = RequestDispatcher(tracker_home)
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
778
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
779 from flup.server.cgi import WSGIServer
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
780 WSGIServer(app).run()
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
781
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
782 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
783 directory to contain::
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
784
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
785 RewriteEngine On
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
786 RewriteBase /
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
787 RewriteRule ^(.*)$ /cgi-bin/roundup_stub/$1 [L]
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
788
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
789 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
790 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
791 stub to get some debugging information.
c70762f2be4e flup setup docs from Christian Glass
Richard Jones <richard@users.sourceforge.net>
parents: 4317
diff changeset
792
6163
c2fd254c9257 Doc updates/indexing.
John Rouillard <rouilj@ieee.org>
parents: 6099
diff changeset
793 .. 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
794
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
795 Stand-alone Web Server
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
796 ----------------------
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
797
3754
9f4dd27ae843 documentation cleanup from Luke Ross (patch [SF#1594860])
Richard Jones <richard@users.sourceforge.net>
parents: 3736
diff changeset
798 This approach will give you faster response than cgi-bin. You may
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
799 investigate using ProxyPass or similar configuration in apache to have your
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
800 tracker accessed through the same URL as other systems.
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
801
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
802 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
803
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
804 The stand-alone web server is started with the command ``roundup-server``. It
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
805 has several options - display them with ``roundup-server -h``.
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
806
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
807 The tracker home configuration is similar to the cgi-bin - you may either edit
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
808 the script to change the TRACKER_HOMES variable or you may supply the
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
809 name=home values on the command-line after all the other options.
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
810
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
811 To make the server run in the background, use the "-d" option, specifying the
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
812 name of a file to write the server process id (pid) to.
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
813
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
814
6163
c2fd254c9257 Doc updates/indexing.
John Rouillard <rouilj@ieee.org>
parents: 6099
diff changeset
815 .. index:: pair: web interface; Zope
c2fd254c9257 Doc updates/indexing.
John Rouillard <rouilj@ieee.org>
parents: 6099
diff changeset
816
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
817 Zope Product - ZRoundup
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
818 -----------------------
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
819
7311
4bbd1316db00 document location of frontends when installed and in source
John Rouillard <rouilj@ieee.org>
parents: 7310
diff changeset
820 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
821 ``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
822 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
823 INSTANCE_HOME/Products or the Zope code tree lib/python/Products.
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
824
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
825 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
826 that interfaces to your new tracker.
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
827
6163
c2fd254c9257 Doc updates/indexing.
John Rouillard <rouilj@ieee.org>
parents: 6099
diff changeset
828 .. index:: ! triple: web interface; apache; mod_wsgi
c2fd254c9257 Doc updates/indexing.
John Rouillard <rouilj@ieee.org>
parents: 6099
diff changeset
829 ! single: wsgi; apache
c2fd254c9257 Doc updates/indexing.
John Rouillard <rouilj@ieee.org>
parents: 6099
diff changeset
830
5891
6e341009593b Deprecate mod_python issue2551005
John Rouillard <rouilj@ieee.org>
parents: 5878
diff changeset
831 Apache HTTP Server with mod_wsgi
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
832 --------------------------------
5891
6e341009593b Deprecate mod_python issue2551005
John Rouillard <rouilj@ieee.org>
parents: 5878
diff changeset
833
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
834 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
835
5909
d57347ae6f25 Typo fixes in installation.txt doc.
John Rouillard <rouilj@ieee.org>
parents: 5908
diff changeset
836 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
837 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
838 configuration. Also there is the
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
839 `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
840 detailed directions.
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
841
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
842 Background
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
843 ~~~~~~~~~~
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
844
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
845 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
846 18.04 LTS. The instructions below assume:
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
847
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
848 - python and roundup are already installed
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
849 - 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
850 environment)
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
851 - 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
852 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
853 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
854 - 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
855
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
856 Install mod-wsgi
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
857 ~~~~~~~~~~~~~~~~
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
858
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
859 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
860 install using the OS package manager (apt).
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
861
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
862 Pip install of mod_wsgi
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
863 '''''''''''''''''''''''
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
864
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
865 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
866 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
867 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
868 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
869
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
870 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
871 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
872 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
873 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
874 auto generated configuration. These instructions follow the pip
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
875 method.
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
876
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
877
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
878 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
879 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
880 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
881 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
882 with:
5911
133efe1fbff7 doc/installation.txt: replace tabs, remove trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents: 5910
diff changeset
883
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
884 - ``sudo apt update``
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
885 - ``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
886
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
887 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
888 ``sudo apt install python-pip``
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 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
891 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
892 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
893 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
894 "successfully."
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
895 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
896 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
897 rule.
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
898 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
899 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
900 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
901 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
902 (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
903 Malt Whiskey image.
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
904
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
905 Package manager install of mod_wsgi
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
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
908 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
909 libapache2-mod-wsgi:
5891
6e341009593b Deprecate mod_python issue2551005
John Rouillard <rouilj@ieee.org>
parents: 5878
diff changeset
910
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
911 - ``sudo apt update``
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
912 - ``sudo apt install apache2 libapache2-mod-wsgi``
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
913
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
914 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
915 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
916 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
917 be used to hand craft an apache config.
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
918
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
919 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
920 to security issues in older releases.
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 Configure web interface via wsgi_handler
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
923 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
924
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
925 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
926 following content (substituting ``/home/admin/trackers/mytracker``
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
927 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
928
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
929 .. code:: python
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
930
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
931 from roundup.cgi.wsgi_handler import RequestDispatcher
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
932 tracker_home = '/home/admin/trackers/mytracker'
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
933 application = RequestDispatcher(tracker_home)
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 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
936 '''''''''''''''''''''''''''''''''''''''''''''''''''''''
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
937
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
938 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
939 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
940 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
941 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
942 ``mod_wsgi-express start-server wsgi.py``.
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
943 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
944 ``tracker.web`` to in ``config.ini``.
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
945
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
946 Run tracker as background daemon
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
947 ''''''''''''''''''''''''''''''''
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
948
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
949 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
950 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
951 `UNIX environment steps`_. These steps are summarized here:
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 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
954 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
955 ``sudo usermod -a -G mytrackergrp admin``
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
956 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
957 ``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
958 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
959 ``sudo usermod -a -G mytrackergrp daemon``
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
960 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
961 ``sudo chgrp -R mytrackergrp ~/trackers/mytracker``.
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
962 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
963 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
964 ``sudo chmod -R g+sw ~/trackers/mytracker/db``
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
965
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
966 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
967 ''''''''''''''''''''''''''
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
968
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
969 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
970 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
971 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
972 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
973 to port 80 run: ``sudo service apache2 stop``.
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
974
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
975 To run as a foreground process
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
976 ++++++++++++++++++++++++++++++
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
977
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
978 1. From the tracker home directory, run
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
979 ``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
980
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
981 To run as a background process
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
982 ++++++++++++++++++++++++++++++
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
983
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
984 1. From the tracker home directory, bash
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
985 ``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
986 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
987 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
988
6163
c2fd254c9257 Doc updates/indexing.
John Rouillard <rouilj@ieee.org>
parents: 6099
diff changeset
989 .. index:: triple: web interface; apache; mod_python (depricated)
c2fd254c9257 Doc updates/indexing.
John Rouillard <rouilj@ieee.org>
parents: 6099
diff changeset
990
2554
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
991 Apache HTTP Server with mod_python
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
992 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
993
5891
6e341009593b Deprecate mod_python issue2551005
John Rouillard <rouilj@ieee.org>
parents: 5878
diff changeset
994 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
995 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
996 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
997 roundup under apache.
6e341009593b Deprecate mod_python issue2551005
John Rouillard <rouilj@ieee.org>
parents: 5878
diff changeset
998
2554
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
999 `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
1000 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
1001 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
1002 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
1003
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1004 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
1005 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
1006
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1007 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
1008 (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
1009 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
1010 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
1011 is located in ``/usr/lib/apache2/build/``)::
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1012
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1013 LD_PRELOAD=/lib/libpthread.so.0
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1014 export LD_PRELOAD
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1015
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1016 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
1017
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1018 LD_PRELOAD=/usr/lib/libc_r.so
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1019 export LD_PRELOAD
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1020
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1021 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
1022 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
1023 ``PythonOption`` directives:
2559
6c096b4aea67 added description and example of mod_python interface option TrackerLanguage
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2554
diff changeset
1024
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1025 TrackerHome:
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1026 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
1027 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
1028
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1029 TrackerLanguage:
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1030 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
1031 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
1032 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
1033 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
1034 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
1035 This option may be omitted.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1036
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1037 TrackerDebug:
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1038 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
1039 ``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
1040 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
1041 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
1042 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
1043 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
1044
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1045 TrackerTiming:
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1046 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
1047 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
1048 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
1049 ``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
1050 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
1051 timing display is disabled.
2945
98efa80f0f90 added mod_python options TrackerDebug and TrackerTiming
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2921
diff changeset
1052
2554
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1053 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
1054 ``/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
1055 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
1056 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
1057 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
1058 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
1059 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
1060 interface (default).
2554
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1061
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1062 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
1063 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
1064 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
1065 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
1066
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1067 Example mod_python configuration::
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1068
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1069 #################################################
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1070 # Roundup Issue tracker
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1071 #################################################
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1072 # enable Python optimizations (like 'python -O')
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1073 PythonOptimize On
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1074 # let apache handle static files from 'html' directories
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1075 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
1076 # everything else is handled by roundup web UI
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1077 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
1078 # 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
1079 RedirectMatch permanent ^/roundup/([^/]+)$ /roundup/$1/
2554
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1080 # common settings for all roundup trackers
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1081 <Directory /var/db/roundup/*>
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1082 Order allow,deny
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1083 Allow from all
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1084 AllowOverride None
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1085 Options None
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1086 AddHandler python-program .py
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1087 PythonHandler roundup.cgi.apache
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1088 # 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
1089 # (note that *some* tracebacks will be displayed anyway)
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1090 #PythonDebug On
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1091 </Directory>
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1092 # 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
1093 <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
1094 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
1095 PythonOption TrackerLanguage ru
6c096b4aea67 added description and example of mod_python interface option TrackerLanguage
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2554
diff changeset
1096 </Directory>
2554
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1097 <Directory /var/db/roundup/devel>
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1098 PythonOption TrackerHome /var/db/roundup/devel
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1099 </Directory>
3965
248c3a7bc94d seems like a reasonable patch
Richard Jones <richard@users.sourceforge.net>
parents: 3949
diff changeset
1100
3814
a612bdc6b1d3 thanks alex
Richard Jones <richard@users.sourceforge.net>
parents: 3799
diff changeset
1101 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
1102 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
1103 your system.
3799
ac4da2670516 trim trailing spaces
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3797
diff changeset
1104
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1105 .. index:: windows; apache config
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1106
3797
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
1107 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
1108
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
1109 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
1110 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
1111 <Directory C:/DATA/roundup/*>
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
1112 <Directory C:/DATA/roundup/support>
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
1113 <Directory C:/DATA/roundup/devel>
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
1114
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
1115 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
1116 ``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
1117 inside the httpd.conf file!)
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
1118
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
1119 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
1120 ``http://<roundupserver>/roundup/support/`` and
3797
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
1121 ``http://<roundupserver>/roundup/devel/``
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
1122
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
1123 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
1124 serving with SSL.
2554
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
1125
6458
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1126 Nginx HTTP Server
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1127 -----------------
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1128
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1129 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
1130 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
1131 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
1132
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1133 .. code::
6458
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1134
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1135 user nginx;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1136 worker_processes auto;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1137 worker_rlimit_nofile 10000;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1138
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1139 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
1140 pid /var/run/nginx.pid;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1141
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1142 events {
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1143 worker_connections 1024;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1144 }
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1145
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1146 upstream tracker-tracker {
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1147 # 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
1148 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
1149 }
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1150
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1151 http {
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1152 include /etc/nginx/mime.types;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1153 default_type application/octet-stream;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1154
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1155 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
1156 '$status $body_bytes_sent "$http_referer" '
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1157 '"$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
1158
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1159 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
1160 sendfile on;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1161 tcp_nopush on;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1162 tcp_nodelay on;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1163 server_tokens off;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1164
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1165 gzip_http_version 1.1;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1166 gzip_proxied any;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1167 gzip_min_length 500;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1168 # default comp_level is 1
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1169 gzip_comp_level 6;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1170 gzip_disable msie6
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1171 gzip_types text/plain text/css
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1172 text/xml application/xml
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1173 text/javascript application/javascript
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1174 text/json application/json;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1175 # 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
1176 # part of their cache check
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1177 gzip_vary on
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1178
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1179 server {
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1180 listen 80;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1181 server_name tracker.example.org;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1182
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1183 location /.well-known/acme-challenge/ {
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1184 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
1185 try_files $uri =404;
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
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1188 location / {
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1189 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
1190 }
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1191 }
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1192
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1193 server {
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1194 listen 443 ssl;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1195 server_name tracker.example.org;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1196 include mime.types;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1197
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1198 # By default use the snakeoil certificate...
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1199 # 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
1200 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
1201 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
1202
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1203 # 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
1204 # 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
1205 # https://wiki.roundup-tracker.org/AddingContentSecurityPolicy
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1206 # which also sets other security headers.
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1207 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
1208 add_header X-Frame-Options "sameorigin";
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1209 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
1210 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
1211 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
1212
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1213 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
1214 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
1215
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1216 root /home/roundup/trackers/tracker/;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1217
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1218 # 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
1219 # going though roundup
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1220 location /@@file/ {
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1221 rewrite ^/@@file/(.*) /html/$1 break;
7499
a072331c843b Change customizing to customising in all variants.
John Rouillard <rouilj@ieee.org>
parents: 7453
diff changeset
1222 # 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
1223 # 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
1224 # 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
1225 # 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
1226 expires 1h;
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
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1229 location / {
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1230 # 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
1231 proxy_pass http://tracker-tracker/;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1232 proxy_set_header Host $host;
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1233 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
1234 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
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
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
1239
6555
34cbd0e633d2 Added FastCGI deployment info, updated Docker docs; docker-compose added
John Rouillard <rouilj@ieee.org>
parents: 6522
diff changeset
1240 FastCGI (Cherokee, Hiawatha, lighttpd)
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1241 --------------------------------------
6555
34cbd0e633d2 Added FastCGI deployment info, updated Docker docs; docker-compose added
John Rouillard <rouilj@ieee.org>
parents: 6522
diff changeset
1242
34cbd0e633d2 Added FastCGI deployment info, updated Docker docs; docker-compose added
John Rouillard <rouilj@ieee.org>
parents: 6522
diff changeset
1243 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
1244 Cherokee can run FastCGI but it also supports wsgi directly using a
7524
6dc0f7afde80 Fix grammar.
John Rouillard <rouilj@ieee.org>
parents: 7523
diff changeset
1245 wsgi server like uWSGI, Gnuicorn etc.
6555
34cbd0e633d2 Added FastCGI deployment info, updated Docker docs; docker-compose added
John Rouillard <rouilj@ieee.org>
parents: 6522
diff changeset
1246
7124
e65f808d55eb fix typo
John Rouillard <rouilj@ieee.org>
parents: 7065
diff changeset
1247 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
1248 Python 2 and Python 3. We don't have a detailed config for this, but
34cbd0e633d2 Added FastCGI deployment info, updated Docker docs; docker-compose added
John Rouillard <rouilj@ieee.org>
parents: 6522
diff changeset
1249 the basic idea can be found at:
34cbd0e633d2 Added FastCGI deployment info, updated Docker docs; docker-compose added
John Rouillard <rouilj@ieee.org>
parents: 6522
diff changeset
1250 https://flask.palletsprojects.com/en/2.0.x/deploying/fastcgi/
34cbd0e633d2 Added FastCGI deployment info, updated Docker docs; docker-compose added
John Rouillard <rouilj@ieee.org>
parents: 6522
diff changeset
1251
34cbd0e633d2 Added FastCGI deployment info, updated Docker docs; docker-compose added
John Rouillard <rouilj@ieee.org>
parents: 6522
diff changeset
1252 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
1253 configuration files and instructions.
34cbd0e633d2 Added FastCGI deployment info, updated Docker docs; docker-compose added
John Rouillard <rouilj@ieee.org>
parents: 6522
diff changeset
1254
34cbd0e633d2 Added FastCGI deployment info, updated Docker docs; docker-compose added
John Rouillard <rouilj@ieee.org>
parents: 6522
diff changeset
1255 .. _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
1256
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1257 WSGI Variations
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1258 ---------------
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1259
6163
c2fd254c9257 Doc updates/indexing.
John Rouillard <rouilj@ieee.org>
parents: 6099
diff changeset
1260 .. index:: triple: web interface; apache; mod_wsgi
c2fd254c9257 Doc updates/indexing.
John Rouillard <rouilj@ieee.org>
parents: 6099
diff changeset
1261 single: wsgi; apache
c2fd254c9257 Doc updates/indexing.
John Rouillard <rouilj@ieee.org>
parents: 6099
diff changeset
1262
5938
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1263 Apache Alternate
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1264 ~~~~~~~~~~~~~~~~
5938
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1265
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1266 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
1267 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
1268 their own user.
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1269
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1270 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
1271 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
1272 directory of the user running the tracker.
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1273
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1274 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
1275 the following as user "roundup"::
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1276
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1277 python setup.py build_doc
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1278 python setup.py sdist --manifest-only
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1279 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
1280
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1281 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
1282 the following apache config to
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1283 /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
1284 as needed):
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1285
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1286 .. code:: ApacheConf
3736
a2d22d0de0bc WSGI support via roundup.cgi.wsgi_handler
Richard Jones <richard@users.sourceforge.net>
parents: 3731
diff changeset
1287
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1288 ServerAdmin webmaster@example.com
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1289 ErrorLog /var/log/apache2/error.log
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1290
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1291 LogLevel notice
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1292
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1293 DocumentRoot /var/www/
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1294
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1295 <VirtualHost *:80>
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1296 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
1297
5911
133efe1fbff7 doc/installation.txt: replace tabs, remove trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents: 5910
diff changeset
1298 # allow access to roundup docs
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1299 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
1300
5911
133efe1fbff7 doc/installation.txt: replace tabs, remove trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents: 5910
diff changeset
1301 # 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
1302 # having roundup serve the files
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1303 Alias /foo/@@file/ /srv/roundup/foo/html/
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1304
5911
133efe1fbff7 doc/installation.txt: replace tabs, remove trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents: 5910
diff changeset
1305 # make /foo into /foo/
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1306 RedirectMatch permanent ^/(foo)$ /$1/
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1307
5911
133efe1fbff7 doc/installation.txt: replace tabs, remove trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents: 5910
diff changeset
1308 # 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
1309 # 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
1310 # ~roundup-foo before it starts roundup.wsgi.
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1311 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
1312
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1313 # 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
1314 # wsgi script below.
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1315 WSGIScriptAlias /foo /srv/roundup/foo/roundup.wsgi
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1316 <Location /foo>
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1317 WSGIProcessGroup roundup-foo
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1318 </Location>
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1319 </VirtualHost>
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1320
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1321 The directory ~roundup-foo should have:
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 * 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
1324 * 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
1325 been initialised using ``roundup-admin``.
5908
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 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
1328 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
1329 ``/srv/roundup/foo/roundup.wsgi``.
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1330
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1331 .. code:: python
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1332
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1333 import sys, os
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1334 sys.stdout = sys.stderr
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1335
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1336 enabled = True
3736
a2d22d0de0bc WSGI support via roundup.cgi.wsgi_handler
Richard Jones <richard@users.sourceforge.net>
parents: 3731
diff changeset
1337
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1338 if enabled:
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1339 # 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
1340 # subdirectory to the python path.
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1341 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
1342
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1343 # obtain the WSGI request dispatcher
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1344 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
1345
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1346 tracker_home = os.path.join(os.getcwd(), 'instance')
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1347 application = RequestDispatcher(tracker_home)
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1348 else:
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1349 def application(environ, start_response):
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1350 status = '503 Service Unavailable'
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1351 output = 'service is down for maintenance'
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1352 response_headers = [('Content-type', 'text/plain'),
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1353 ('Content-Length', str(len(output)))]
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1354 start_response(status, response_headers)
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1355 return [output]
3736
a2d22d0de0bc WSGI support via roundup.cgi.wsgi_handler
Richard Jones <richard@users.sourceforge.net>
parents: 3731
diff changeset
1356
5908
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1357 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
1358 "enabled = False", apache will automatically detect the changed
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1359 roundup.wsgi file and reload it.
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1360
c7ab00dd6502 First pass at updated wsgi documentation
John Rouillard <rouilj@ieee.org>
parents: 5891
diff changeset
1361 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
1362 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
1363 put the files and messages in the db directory for the user.
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1364
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1365 .. index:: pair: web interface; Gunicorn
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1366 single: wsgi; Gunicorn
6163
c2fd254c9257 Doc updates/indexing.
John Rouillard <rouilj@ieee.org>
parents: 6099
diff changeset
1367
5938
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1368 Gunicorn Installation
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1369 ~~~~~~~~~~~~~~~~~~~~~
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1370
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1371 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
1372 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
1373 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
1374 up as a reverse proxy.
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1375
6390
7c852cad2ca8 Add wsgi.py to frontends. Update docs.
John Rouillard <rouilj@ieee.org>
parents: 6372
diff changeset
1376 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
1377 the current directory with the contents::
5938
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1378
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1379 # if roundup is not installed on the default PYTHONPATH
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1380 # set it here with:
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1381 import sys
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1382 sys.path.append('/path/to/roundup/install/directory')
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1383
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1384 # obtain the WSGI request dispatcher
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1385 from roundup.cgi.wsgi_handler import RequestDispatcher
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1386 tracker_home = '/path/to/tracker/install/directory'
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1387
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1388 app = RequestDispatcher(tracker_home)
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1389
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1390 Assuming the proxy forwards /tracker, run Gunicorn as::
5938
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1391
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1392 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
1393
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1394 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
1395 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
1396 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
1397 ``--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
1398 nginx configuration below.
5938
16eec1c41e0e Add basic gunicorn configuration mechanism.
John Rouillard <rouilj@ieee.org>
parents: 5911
diff changeset
1399
7601
ac8dc6e7a8e3 docs: add link to article on using gunicorn with docker.
John Rouillard <rouilj@ieee.org>
parents: 7581
diff changeset
1400 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
1401 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
1402
6163
c2fd254c9257 Doc updates/indexing.
John Rouillard <rouilj@ieee.org>
parents: 6099
diff changeset
1403 .. index:: pair: web interface; uWSGI
c2fd254c9257 Doc updates/indexing.
John Rouillard <rouilj@ieee.org>
parents: 6099
diff changeset
1404 single: wsgi; uWSGI
c2fd254c9257 Doc updates/indexing.
John Rouillard <rouilj@ieee.org>
parents: 6099
diff changeset
1405
5940
459426a8c61e Add basic uwsgi setup.
John Rouillard <rouilj@ieee.org>
parents: 5938
diff changeset
1406 uWSGI Installation
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1407 ~~~~~~~~~~~~~~~~~~
5940
459426a8c61e Add basic uwsgi setup.
John Rouillard <rouilj@ieee.org>
parents: 5938
diff changeset
1408
459426a8c61e Add basic uwsgi setup.
John Rouillard <rouilj@ieee.org>
parents: 5938
diff changeset
1409 For a basic roundup install using uWSGI behind a front end server,
459426a8c61e Add basic uwsgi setup.
John Rouillard <rouilj@ieee.org>
parents: 5938
diff changeset
1410 install uwsgi and the python3 (or python) plugin. Then run::
459426a8c61e Add basic uwsgi setup.
John Rouillard <rouilj@ieee.org>
parents: 5938
diff changeset
1411
459426a8c61e Add basic uwsgi setup.
John Rouillard <rouilj@ieee.org>
parents: 5938
diff changeset
1412 uwsgi --http-socket 127.0.0.1:8917 \
459426a8c61e Add basic uwsgi setup.
John Rouillard <rouilj@ieee.org>
parents: 5938
diff changeset
1413 --plugin python3 --mount=/tracker=wsgi.py \
459426a8c61e Add basic uwsgi setup.
John Rouillard <rouilj@ieee.org>
parents: 5938
diff changeset
1414 --manage-script-name --callable app
459426a8c61e Add basic uwsgi setup.
John Rouillard <rouilj@ieee.org>
parents: 5938
diff changeset
1415
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1416 using the same wsgi.py as was used for Gunicorn. If you get path not
5940
459426a8c61e Add basic uwsgi setup.
John Rouillard <rouilj@ieee.org>
parents: 5938
diff changeset
1417 found errors, check the mount option. The /tracker entry must match
459426a8c61e Add basic uwsgi setup.
John Rouillard <rouilj@ieee.org>
parents: 5938
diff changeset
1418 the path used for the [tracker] web value in the tracker's config.ini.
459426a8c61e Add basic uwsgi setup.
John Rouillard <rouilj@ieee.org>
parents: 5938
diff changeset
1419
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1420 Configure an Email Interface
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1421 ============================
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1422
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1423 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
1424 "``nosyreaction.py``" module from your tracker "``detectors``" directory.
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1425
1576
80519db85eac More tweaks to the licensing to make the Debian folks happy :)
Richard Jones <richard@users.sourceforge.net>
parents: 1574
diff changeset
1426 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
1427
3754
9f4dd27ae843 documentation cleanup from Luke Ross (patch [SF#1594860])
Richard Jones <richard@users.sourceforge.net>
parents: 3736
diff changeset
1428 There are five supported ways to get emailed issues into the
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1429 Roundup tracker. You should pick ONE of the following, all
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1430 of which will continue my example setup from above:
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1431
3799
ac4da2670516 trim trailing spaces
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3797
diff changeset
1432 As a mail alias pipe process
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1433 ----------------------------
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1434
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1435 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
1436 "``|/usr/bin/python /usr/bin/roundup-mailgw <tracker_home>``"
ed82c2c6ee34 fix doc
Richard Jones <richard@users.sourceforge.net>
parents: 3523
diff changeset
1437 (substitute ``/usr/bin`` for wherever roundup-mailgw is installed).
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1438
3754
9f4dd27ae843 documentation cleanup from Luke Ross (patch [SF#1594860])
Richard Jones <richard@users.sourceforge.net>
parents: 3736
diff changeset
1439 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
1440 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
1441 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
1442 and change the command to::
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1443
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1444 |roundup-mailgw /opt/roundup/trackers/support
3799
ac4da2670516 trim trailing spaces
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3797
diff changeset
1445
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1446 To test the mail gateway on unix systems, try::
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1447
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1448 echo test |mail -s '[issue] test' support@YOUR_DOMAIN_HERE
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1449
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1450 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
1451 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
1452 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
1453 (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
1454 database to become corrupted.*
3722
41feeed84caa *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 3666
diff changeset
1455
41feeed84caa *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 3666
diff changeset
1456
3447
83e358352e6e minor correction to recent addition by Faheem Mitha
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3446
diff changeset
1457 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
1458 ------------------------------------------------------------------
3444
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1459
3446
2325b221bf47 link to exim site
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3444
diff changeset
1460 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
1461 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
1462 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
1463 included, since Exim3 is considered obsolete.
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1464
7136
a67f55c42476 fix links.
John Rouillard <rouilj@ieee.org>
parents: 7124
diff changeset
1465 .. _Exim 4: https://www.exim.org/
3446
2325b221bf47 link to exim site
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3444
diff changeset
1466
3444
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1467 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
1468 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
1469 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
1470
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1471 * 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
1472 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
1473 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
1474 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
1475 user ``roundup``.
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1476
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1477 * 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
1478 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
1479 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
1480 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
1481 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
1482 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
1483
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1484 The matching is done in the line::
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1485
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1486 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
1487
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1488 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
1489 Exim4.
3444
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1490
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1491 .. note::
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1492 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
1493 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
1494 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
1495 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
1496 ``/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
1497 system with Exim4 installed.
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1498
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1499 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
1500 README.Debian in
5756
e48b039b0ec0 issue2550966: fix suboptimal links in docs.
John Rouillard <rouilj@ieee.org>
parents: 5610
diff changeset
1501 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
1502 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
1503
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1504 This config makes a few assumptions:
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1505
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1506 * 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
1507 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
1508 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
1509 ``/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
1510
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1511 * 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
1512 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
1513 user, in this case, 'roundup'.
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1514
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1515 * 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
1516 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
1517 in 0.8 from ``config.py``).
3444
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1518
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1519 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
1520 section of the Exim4 config::
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1521
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1522 # Home dir for your Roundup installation
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1523 ROUNDUP_HOME=/var/lib/roundup/trackers
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1524
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1525 # User and group for Roundup.
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1526 ROUNDUP_USER=roundup
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1527 ROUNDUP_GROUP=roundup
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1528
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1529 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
1530 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
1531
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1532 roundup_router:
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1533 driver = accept
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1534 # 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
1535 # 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
1536 # to be present too.
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1537 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
1538 transport = roundup_transport
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1539
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1540 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
1541 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
1542
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1543 roundup_transport:
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1544 driver = pipe
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1545 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
1546 current_directory = ROUNDUP_HOME
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1547 home_directory = ROUNDUP_HOME
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1548 user = ROUNDUP_USER
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1549 group = ROUNDUP_GROUP
0da93b338457 exim configuration instructions (from [SF#1393860])
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3421
diff changeset
1550
1317
28ae91aae74f clarifications
Richard Jones <richard@users.sourceforge.net>
parents: 1316
diff changeset
1551 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
1552 ---------------------------------------
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1553
3405
292fbed108ca *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 3335
diff changeset
1554 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
1555 (substitute ``/usr/bin`` for wherever roundup-mailgw is installed)::
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1556
3524
ed82c2c6ee34 fix doc
Richard Jones <richard@users.sourceforge.net>
parents: 3523
diff changeset
1557 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
1558
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1559 Where the ``mail_spool_file`` argument is the location of the roundup submission
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1560 user's mail spool. On most systems, the spool for a user "issue_tracker"
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1561 will be "``/var/mail/issue_tracker``".
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1562
1317
28ae91aae74f clarifications
Richard Jones <richard@users.sourceforge.net>
parents: 1316
diff changeset
1563 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
1564 -----------------------------------
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1565
3405
292fbed108ca *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 3335
diff changeset
1566 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
1567 one (substitute ``/usr/bin`` for wherever roundup-mailgw is
3405
292fbed108ca *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 3335
diff changeset
1568 installed)::
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1569
3524
ed82c2c6ee34 fix doc
Richard Jones <richard@users.sourceforge.net>
parents: 3523
diff changeset
1570 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
1571
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1572 where pop_spec is "``username:password@server``" that specifies the roundup
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1573 submission user's POP account name, password and server.
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1574
7503
7b6278da3faa Update roundup-mailgw install with other methods; formatting
John Rouillard <rouilj@ieee.org>
parents: 7501
diff changeset
1575 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
1576 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
1577 <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
1578
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1579 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
1580
2211
272b654b1227 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2186
diff changeset
1581 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
1582 -------------------------------------
2211
272b654b1227 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2186
diff changeset
1583
272b654b1227 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2186
diff changeset
1584 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
1585 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
1586 installed)::
2211
272b654b1227 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2186
diff changeset
1587
3524
ed82c2c6ee34 fix doc
Richard Jones <richard@users.sourceforge.net>
parents: 3523
diff changeset
1588 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
1589
272b654b1227 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2186
diff changeset
1590 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
1591 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
1592 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
1593
7b6278da3faa Update roundup-mailgw install with other methods; formatting
John Rouillard <rouilj@ieee.org>
parents: 7501
diff changeset
1594 imap username:password@server mailbox
7b6278da3faa Update roundup-mailgw install with other methods; formatting
John Rouillard <rouilj@ieee.org>
parents: 7501
diff changeset
1595
7b6278da3faa Update roundup-mailgw install with other methods; formatting
John Rouillard <rouilj@ieee.org>
parents: 7501
diff changeset
1596 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
1597 ``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
1598 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
1599 mailgw in the admin guide
7b6278da3faa Update roundup-mailgw install with other methods; formatting
John Rouillard <rouilj@ieee.org>
parents: 7501
diff changeset
1600 <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
1601
7b6278da3faa Update roundup-mailgw install with other methods; formatting
John Rouillard <rouilj@ieee.org>
parents: 7501
diff changeset
1602 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
1603 `using the windows scheduler`_.
2211
272b654b1227 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2186
diff changeset
1604
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
1605
1939
1303c208419d some updates that were sitting on disk
Richard Jones <richard@users.sourceforge.net>
parents: 1913
diff changeset
1606 UNIX Environment Steps
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1607 ======================
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
1608
1089
43ab730ee194 instance -> tracker, node -> item
Richard Jones <richard@users.sourceforge.net>
parents: 1078
diff changeset
1609 Each tracker ideally should have its own UNIX group, so create
1049
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1610 a UNIX group (edit ``/etc/group`` or your appropriate NIS map if
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1611 you're using NIS). To continue with my examples so far, I would
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1612 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
1613 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
1614 '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
1615 working with this Roundup tracker. In addition to 'real' users,
1049
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1616 the Roundup email gateway will need to have permissions to this
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1617 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
1618 group (typically "mail" or "daemon"). The UNIX group might then
67af854f4c33 more installation hintage
Richard Jones <richard@users.sourceforge.net>
parents: 1571
diff changeset
1619 look like::
1049
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1620
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1621 support:*:1002:jblaine,samh,geezer,mail
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
1622
1049
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1623 If you intend to use the web interface (as most people do), you
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1624 should also add the username your web server runs as to the group.
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1625 My group now looks like this::
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
1626
1049
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1627 support:*:1002:jblaine,samh,geezer,mail,apache
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1628
1089
43ab730ee194 instance -> tracker, node -> item
Richard Jones <richard@users.sourceforge.net>
parents: 1078
diff changeset
1629 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
1630 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
1631 by the group.
344bad728d10 more tweakage of help display and style issues
Richard Jones <richard@users.sourceforge.net>
parents: 1049
diff changeset
1632
2594
c0d6d5004464 rdbms doc updates
Richard Jones <richard@users.sourceforge.net>
parents: 2559
diff changeset
1633 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
1634 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
1635 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
1636 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
1637 in ``rdbms`` -> ``user`` and ``password`` in ``config.ini``.
2594
c0d6d5004464 rdbms doc updates
Richard Jones <richard@users.sourceforge.net>
parents: 2559
diff changeset
1638
1049
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1639 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
1640 responsibility of running roundup. This user:
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
1641
1049
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1642 1. runs the CGI interface daemon
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1643 2. runs regular polls for email
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1644 3. runs regular checks (using cron) to ensure the daemon is up
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1645 4. optionally has no login password so that nobody but the "root" user
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
1646 may actually login and play with the roundup setup.
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
1647
3754
9f4dd27ae843 documentation cleanup from Luke Ross (patch [SF#1594860])
Richard Jones <richard@users.sourceforge.net>
parents: 3736
diff changeset
1648 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
1649 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
1650 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
1651 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
1652 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
1653
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
1654
3830
a48c514c465f Add simple anti-spam recipe to docs
Richard Jones <richard@users.sourceforge.net>
parents: 3814
diff changeset
1655 Public Tracker Considerations
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1656 =============================
3830
a48c514c465f Add simple anti-spam recipe to docs
Richard Jones <richard@users.sourceforge.net>
parents: 3814
diff changeset
1657
a48c514c465f Add simple anti-spam recipe to docs
Richard Jones <richard@users.sourceforge.net>
parents: 3814
diff changeset
1658 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
1659 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
1660
5300
d8ed32b297e2 Update to migrating backend and tweak to install doc.
John Rouillard <rouilj@ieee.org>
parents: 5140
diff changeset
1661 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
1662 `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
1663 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
1664
7501
d401d6f51604 Update Public tracker consideration with wiki links
John Rouillard <rouilj@ieee.org>
parents: 7500
diff changeset
1665 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
1666 described on the wiki
d401d6f51604 Update Public tracker consideration with wiki links
John Rouillard <rouilj@ieee.org>
parents: 7500
diff changeset
1667 <https://wiki.roundup-tracker.org/RequireReCAPTCHAForLogin>`_. The
d401d6f51604 Update Public tracker consideration with wiki links
John Rouillard <rouilj@ieee.org>
parents: 7500
diff changeset
1668 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
1669 keys/password using TOTP/HOTP
d401d6f51604 Update Public tracker consideration with wiki links
John Rouillard <rouilj@ieee.org>
parents: 7500
diff changeset
1670 <https://wiki.roundup-tracker.org/OneTimePasswords>`_. If you
7602
4778b8f8f301 docs: fix grammar
John Rouillard <rouilj@ieee.org>
parents: 7601
diff changeset
1671 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
1672 <https://wiki.roundup-tracker.org/ShibbolethLogin>`_
d401d6f51604 Update Public tracker consideration with wiki links
John Rouillard <rouilj@ieee.org>
parents: 7500
diff changeset
1673 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
1674 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
1675 Security headings of the `CustomisationExamples wiki page
d401d6f51604 Update Public tracker consideration with wiki links
John Rouillard <rouilj@ieee.org>
parents: 7500
diff changeset
1676 <https://wiki.roundup-tracker.org/CustomisationExamples>`_ and
d401d6f51604 Update Public tracker consideration with wiki links
John Rouillard <rouilj@ieee.org>
parents: 7500
diff changeset
1677 `AdminstrationExample
d401d6f51604 Update Public tracker consideration with wiki links
John Rouillard <rouilj@ieee.org>
parents: 7500
diff changeset
1678 <https://wiki.roundup-tracker.org/AdministrationExample>`_ pages
d401d6f51604 Update Public tracker consideration with wiki links
John Rouillard <rouilj@ieee.org>
parents: 7500
diff changeset
1679 on the wiki.
d401d6f51604 Update Public tracker consideration with wiki links
John Rouillard <rouilj@ieee.org>
parents: 7500
diff changeset
1680
d401d6f51604 Update Public tracker consideration with wiki links
John Rouillard <rouilj@ieee.org>
parents: 7500
diff changeset
1681
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1682 Docker Support
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1683 ==============
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1684
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1685 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
1686 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
1687 hub.docker.com
c550b338616a Link to docker support from main web index. Docker support changes.
John Rouillard <rouilj@ieee.org>
parents: 7499
diff changeset
1688 <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
1689 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
1690 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
1691 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
1692 https terminating proxy in front of it.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1693
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1694 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
1695 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
1696 of the source tree.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1697
7500
c550b338616a Link to docker support from main web index. Docker support changes.
John Rouillard <rouilj@ieee.org>
parents: 7499
diff changeset
1698 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
1699 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
1700 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
1701 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
1702 (including redis client support).
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1703
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1704 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
1705 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
1706 scheduled (cron) job to access email:
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1707
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1708 * `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
1709 * `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
1710 * `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
1711
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1712 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
1713 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
1714 etc).
7515d03fb26d docs: add possible way to get email into dockerized roundup.
John Rouillard <rouilj@ieee.org>
parents: 7602
diff changeset
1715
7515d03fb26d docs: add possible way to get email into dockerized roundup.
John Rouillard <rouilj@ieee.org>
parents: 7602
diff changeset
1716 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
1717
7515d03fb26d docs: add possible way to get email into dockerized roundup.
John Rouillard <rouilj@ieee.org>
parents: 7602
diff changeset
1718 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
1719 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
1720
7515d03fb26d docs: add possible way to get email into dockerized roundup.
John Rouillard <rouilj@ieee.org>
parents: 7602
diff changeset
1721 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
1722 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
1723
7441
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1724 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
1725 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
1726 backend for use with Roundup.
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1727
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1728 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
1729 production Roundup instance.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1730
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1731 .. _OSWAP Docker Security practices:
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1732 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
1733
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1734 Building a Docker Container
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1735 ---------------------------
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1736
7441
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1737 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
1738 ``source`` build-arg.
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1739
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1740 ``--build-arg="source=local"``
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1741 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
1742 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
1743
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1744 ``--build-arg="source=pypi"``
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1745 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
1746 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
1747 `pip version specifiers
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1748 <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
1749 `pypi` without embedding any spaces. For example::
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1750
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1751 # 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
1752 --build-arg="source=pypi~=2.2.0b1"
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1753
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1754 # install only a 2.2.0 beta
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1755 --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
1756
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1757 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
1758 in a Docker container.
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1759
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1760 ``--build-arg="source=pip_local"``
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1761 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
1762 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
1763 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
1764 by some Python users.
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1765
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1766 ``--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
1767 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
1768 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
1769 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
1770 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
1771 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
1772 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
1773 Use ``local`` or ``pip_local`` instead.
7441
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1774
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1775 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
1776 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
1777
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1778 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
1779
7441
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1780 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
1781 Roundup release on PyPI, by running::
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1782
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1783 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
1784 -f scripts/Docker/Dockerfile .
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1785
7441
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1786 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
1787
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1788 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
1789 ``/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
1790 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
1791 ``/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
1792
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1793 --build-arg="appdir=/new/path"
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1794
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1795 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
1796 using::
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1797
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
1798 --build-arg="pip_mod=requests setproctitle"
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1799
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1800 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
1801 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
1802 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
1803 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
1804 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
1805 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
1806
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1807 .. _UID at image build time:
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1808
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1809 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
1810 ``--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
1811 GID.
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1812
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1813 Configuring Roundup in the Container
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1814 ------------------------------------
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1815
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1816 .. caution::
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1817
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1818 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
1819 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
1820 for details
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1821 <https://docs.docker.com/engine/reference/commandline/run/#publish>`_.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1822 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
1823 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
1824 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
1825 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
1826
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1827 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
1828 above, run an interactive session with::
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1829
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1830 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
1831 -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
1832
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1833 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
1834 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
1835 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
1836 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
1837 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
1838 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
1839 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
1840
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1841 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
1842 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
1843 ``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
1844 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
1845
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1846 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
1847 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
1848 database type.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1849
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1850 .. _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
1851
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1852 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
1853 ``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
1854 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
1855 ``config.ini`` for other settings.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1856
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1857 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
1858 to `initialise the tracker`_ (step 4) with::
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1859
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1860 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
1861 -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
1862
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1863 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
1864 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
1865
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1866 .. _initialise the tracker: #configuring-your-first-tracker
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1867
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1868 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
1869
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1870 docker run -p 9017:8080 -d \
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1871 -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
1872
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1873 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
1874
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1875 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
1876 can use::
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1877
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1878 docker exec -it c0d5 sh
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1879
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1880 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
1881 from ``docker container ls``.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1882
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1883 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
1884 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
1885
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1886 * `Nginx HTTP Server`_
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1887
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1888 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
1889 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
1890
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1891
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1892 Running Your Container
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1893 ----------------------
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 .. note::
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1896 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
1897 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
1898 docker hub specification ``rounduptracker/roundup:latest``
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1899 (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
1900
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1901 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
1902
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1903 Guided install
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1904 ~~~~~~~~~~~~~~
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1905
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1906 By default, running::
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1907
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1908 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
1909 -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
1910
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1911 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
1912 ``..../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
1913 "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
1914 Container`_.
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 Arguments for roundup-server
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1917 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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 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
1920 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
1921 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
1922
7707
36c3acb4b49b feat: add help argument for docker image
John Rouillard <rouilj@ieee.org>
parents: 7700
diff changeset
1923 Brief Help
36c3acb4b49b feat: add help argument for docker image
John Rouillard <rouilj@ieee.org>
parents: 7700
diff changeset
1924 ~~~~~~~~~~
36c3acb4b49b feat: add help argument for docker image
John Rouillard <rouilj@ieee.org>
parents: 7700
diff changeset
1925
36c3acb4b49b feat: add help argument for docker image
John Rouillard <rouilj@ieee.org>
parents: 7700
diff changeset
1926 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
1927
36c3acb4b49b feat: add help argument for docker image
John Rouillard <rouilj@ieee.org>
parents: 7700
diff changeset
1928 docker run -it \
36c3acb4b49b feat: add help argument for docker image
John Rouillard <rouilj@ieee.org>
parents: 7700
diff changeset
1929 -v $PWD/tracker:/usr/src/app/tracker \
36c3acb4b49b feat: add help argument for docker image
John Rouillard <rouilj@ieee.org>
parents: 7700
diff changeset
1930 roundup-app:latest help
36c3acb4b49b feat: add help argument for docker image
John Rouillard <rouilj@ieee.org>
parents: 7700
diff changeset
1931
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1932 Invoking a Shell
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1933 ~~~~~~~~~~~~~~~~
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1934
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1935 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
1936 container using::
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 docker run -it \
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1939 -v $PWD/tracker:/usr/src/app/tracker \
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1940 roundup-app:latest shell
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1941
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1942 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
1943 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
1944 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
1945 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
1946 and ``demo`` for ``roundup-demo``.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1947
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1948 Invoke roundup-admin
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1949 ~~~~~~~~~~~~~~~~~~~~
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1950
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1951 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
1952
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1953 docker run -it \
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1954 -v $PWD/tracker:/usr/src/app/tracker \
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1955 roundup-app:latest admin -i tracker/tracker1
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1956
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1957 to start ``roundup-admin`` using the directory
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1958 ``$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
1959 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
1960 invoking ``roundup-admin`` manually.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1961
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1962 One possibly useful command is::
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
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1965 docker run -it \
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1966 -v $PWD/tracker:/usr/src/app/tracker \
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1967 roundup-app:latest admin templates
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 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
1970
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1971 Invoke roundup-demo
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1972 ~~~~~~~~~~~~~~~~~~~
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 Lastly you can::
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1975
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1976 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
1977 -v $PWD/tracker:/usr/src/app/tracker \
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1978 roundup-app:latest demo anydbm responsive
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 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
1981 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
1982 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
1983
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1984 Debugging
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1985 ~~~~~~~~~
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 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
1988 ``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
1989 output from the startup script.
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 Running Multiple Trackers
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1992 --------------------------
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 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
1995 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
1996 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
1997 specifications like::
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1998
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
1999 docker run --rm -p 9017:8080 \
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2000 -v /.../issue.tracker:/usr/src/app/tracker \
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2001 roundup-app:latest tracker1=tracker/tracker1_home \
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2002 tracker2=tracker/tracker2_home
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 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
2005 ``http://yourhost:9017/tracker1/`` and
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2006 ``http://yourhost:9017/tracker2/``. The arguments after
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2007 ``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
2008 passed to ``roundup-server``.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2009
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2010 Docker-compose Deployment
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2011 -------------------------
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2012
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2013 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
2014 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
2015 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
2016 at the top of the yml file.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2017
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2018 Tags for Dockerhub Docker Images
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 The docker images available from
7441
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
2022 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
2023 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
2024 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
2025 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
2026
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2027 ``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
2028 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
2029 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
2030 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
2031 the build.
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2032
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2033 ``rounduptracker/roundup:2.3.0``
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2034 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
2035 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
2036 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
2037 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
2038 libraries (redis, xapian, psycopg2, ...) will change.
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2039
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2040 ``rounduptracker/roundup:2.3.0-1``
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2041 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
2042 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
2043 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
2044 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
2045 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
2046 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
2047
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2048 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
2049 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
2050 example: ``rounduptracker/roundup:2.3.0b1-devel``,
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
2051 ``rounduptracker/roundup:devel``
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
2052
e7df82ae137d Cleanup docker before 2.3.0b1 release
John Rouillard <rouilj@ieee.org>
parents: 7438
diff changeset
2053 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
2054 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
2055 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
2056 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
2057 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
2058 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
2059 **not** be used in production.
2069
d8c7fd205cd8 info for installing the CSV module
Richard Jones <richard@users.sourceforge.net>
parents: 2003
diff changeset
2060
1228
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
2061 Maintenance
Richard Jones <richard@users.sourceforge.net>
parents: 1227
diff changeset
2062 ===========
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2063
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2064 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
2065 <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
2066 common maintenance tasks on Roundup.
1049
Richard Jones <richard@users.sourceforge.net>
parents: 1024
diff changeset
2067
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
2068
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
2069 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
2070 =========
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
2071
882
b99948d32a2d clearing up ambiguous ref name
Richard Jones <richard@users.sourceforge.net>
parents: 798
diff changeset
2072 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
2073 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
2074 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
2075
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2076
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2077 Further Reading
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2078 ===============
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2079
3528
762d65fefea5 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 3524
diff changeset
2080 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
2081 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
2082 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
2083 Roundup`_ and the `Roundup reference`_.
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2084
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2085
1576
80519db85eac More tweaks to the licensing to make the Debian folks happy :)
Richard Jones <richard@users.sourceforge.net>
parents: 1574
diff changeset
2086 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
2087 =========================
80519db85eac More tweaks to the licensing to make the Debian folks happy :)
Richard Jones <richard@users.sourceforge.net>
parents: 1574
diff changeset
2088
80519db85eac More tweaks to the licensing to make the Debian folks happy :)
Richard Jones <richard@users.sourceforge.net>
parents: 1574
diff changeset
2089 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
2090 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
2091 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
2092
80519db85eac More tweaks to the licensing to make the Debian folks happy :)
Richard Jones <richard@users.sourceforge.net>
parents: 1574
diff changeset
2093 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
2094 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
2095 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
2096 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
2097 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
2098 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
2099 "issue" class, but with different properties. See the customisation
98656054ccfa *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2069
diff changeset
2100 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
2101
80519db85eac More tweaks to the licensing to make the Debian folks happy :)
Richard Jones <richard@users.sourceforge.net>
parents: 1574
diff changeset
2102
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2103 Platform-Specific Notes
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2104 =======================
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2105
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2106 .. index:: windows; add Roundup to path
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2107
1649
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2108 Windows command-line tools
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2109 --------------------------
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2110
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2111 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
2112 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
2113
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2114 On Windows 2000 and later:
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2115
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2116 1) Press the "Start" button.
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2117 2) Choose "Settings"
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2118 3) Choose "Control Panel"
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2119 4) Choose "System"
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2120 5) Choose "Advanced"
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2121 6) Choose "Environmental Variables"
1746
9c1da921cd35 minor rest tweak
Richard Jones <richard@users.sourceforge.net>
parents: 1688
diff changeset
2122 7) Add: "<dir>\Scripts" to the "Path" environmental variable.
1649
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2123
6727
3f3ce3004013 issue2551206 - remove mention of roundup installer, fix up windows docs
John Rouillard <rouilj@ieee.org>
parents: 6663
diff changeset
2124 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
2125 of your Python installation.
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2126
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2127 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
2128 Panel" is directly accessible from "Start".
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2129
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2130 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
2131
7608
cdc7490f510e docs: add mention of pyreadline3 under windows
John Rouillard <rouilj@ieee.org>
parents: 7603
diff changeset
2132 Use pip to install pyreadline3 for roundup-admin line editing
cdc7490f510e docs: add mention of pyreadline3 under windows
John Rouillard <rouilj@ieee.org>
parents: 7603
diff changeset
2133 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cdc7490f510e docs: add mention of pyreadline3 under windows
John Rouillard <rouilj@ieee.org>
parents: 7603
diff changeset
2134
cdc7490f510e docs: add mention of pyreadline3 under windows
John Rouillard <rouilj@ieee.org>
parents: 7603
diff changeset
2135 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
2136 command line editing and history.
cdc7490f510e docs: add mention of pyreadline3 under windows
John Rouillard <rouilj@ieee.org>
parents: 7603
diff changeset
2137
cdc7490f510e docs: add mention of pyreadline3 under windows
John Rouillard <rouilj@ieee.org>
parents: 7603
diff changeset
2138 This will remove the dreaded::
cdc7490f510e docs: add mention of pyreadline3 under windows
John Rouillard <rouilj@ieee.org>
parents: 7603
diff changeset
2139
cdc7490f510e docs: add mention of pyreadline3 under windows
John Rouillard <rouilj@ieee.org>
parents: 7603
diff changeset
2140 Note: command history and editing not available
cdc7490f510e docs: add mention of pyreadline3 under windows
John Rouillard <rouilj@ieee.org>
parents: 7603
diff changeset
2141
cdc7490f510e docs: add mention of pyreadline3 under windows
John Rouillard <rouilj@ieee.org>
parents: 7603
diff changeset
2142 warning when starting roundup-admin.
1649
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2143
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2144 Windows Server
6d392197daa3 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1648
diff changeset
2145 --------------
1576
80519db85eac More tweaks to the licensing to make the Debian folks happy :)
Richard Jones <richard@users.sourceforge.net>
parents: 1574
diff changeset
2146
3797
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2147 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
2148 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
2149
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2150 .. index:: windows; use scheduler for email integration
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2151
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2152 .. _Using the Windows scheduler:
3797
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2153
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2154 1. Using the Windows scheduler
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2155 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2156
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2157 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
2158 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
2159
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2160 Run
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2161 ``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
2162
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2163 Start In
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2164 ``C:\cygwin\opt\roundup\bin``
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2165
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2166 Schedule
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2167 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
2168
80519db85eac More tweaks to the licensing to make the Debian folks happy :)
Richard Jones <richard@users.sourceforge.net>
parents: 1574
diff changeset
2169 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
2170 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
2171
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2172 Run
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2173 ``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
2174
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2175 Start In
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2176 ``C:\cygwin\opt\roundup\bin``
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2177
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2178 Schedule
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2179 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
2180
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2181 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
2182
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2183
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2184 .. 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
2185
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2186 2. Installing the roundup server as a Windows service
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2187 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2188
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2189 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
2190 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
2191 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
2192
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2193 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
2194 relevant settings.
1588
1ac46e7e4150 more doc work - new improved overview doc
Richard Jones <richard@users.sourceforge.net>
parents: 1576
diff changeset
2195
3797
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2196 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
2197 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
2198
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2199 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
2200
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2201 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
2202 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
2203 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
2204
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2205 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
2206 (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
2207 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
2208
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2209 [trackers]
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2210 software = C:\DATA\Roundup\Software
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2211
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2212 (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
2213 ``C:\DATA\Roundup\Software``)
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2214
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2215 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
2216
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2217 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
2218 roundup-server -c start
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2219
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2220 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
2221 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
2222 automatically instead of manually.
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2223
bb6e8fafa341 Updated Windows installation docs (thanks Bo Berglund)
Richard Jones <richard@users.sourceforge.net>
parents: 3794
diff changeset
2224 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
2225 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
2226 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
2227
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2228 Sendmail smrsh
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2229 --------------
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2230
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2231 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
2232 smrsh that roundup-mailgw is a valid/trusted mail handler
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2233 before it will work.
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2234
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2235 This is usually done via the following 2 steps:
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2236
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2237 1. make a symlink in ``/etc/smrsh`` called ``roundup-mailgw``
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2238 which points to the full path of your actual ``roundup-mailgw``
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2239 script.
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2240
1089
43ab730ee194 instance -> tracker, node -> item
Richard Jones <richard@users.sourceforge.net>
parents: 1078
diff changeset
2241 2. change your alias to ``"|roundup-mailgw <tracker_home>"``
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2242
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2243
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2244 Linux
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2245 -----
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2246
1939
1303c208419d some updates that were sitting on disk
Richard Jones <richard@users.sourceforge.net>
parents: 1913
diff changeset
2247 Make sure you read the instructions under `UNIX environment steps`_.
1574
67af854f4c33 more installation hintage
Richard Jones <richard@users.sourceforge.net>
parents: 1571
diff changeset
2248
67af854f4c33 more installation hintage
Richard Jones <richard@users.sourceforge.net>
parents: 1571
diff changeset
2249
67af854f4c33 more installation hintage
Richard Jones <richard@users.sourceforge.net>
parents: 1571
diff changeset
2250 Solaris
67af854f4c33 more installation hintage
Richard Jones <richard@users.sourceforge.net>
parents: 1571
diff changeset
2251 -------
67af854f4c33 more installation hintage
Richard Jones <richard@users.sourceforge.net>
parents: 1571
diff changeset
2252
67af854f4c33 more installation hintage
Richard Jones <richard@users.sourceforge.net>
parents: 1571
diff changeset
2253 You'll need to build Python.
67af854f4c33 more installation hintage
Richard Jones <richard@users.sourceforge.net>
parents: 1571
diff changeset
2254
1939
1303c208419d some updates that were sitting on disk
Richard Jones <richard@users.sourceforge.net>
parents: 1913
diff changeset
2255 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
2256
1574
67af854f4c33 more installation hintage
Richard Jones <richard@users.sourceforge.net>
parents: 1571
diff changeset
2257
2972
dd558120d927 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2945
diff changeset
2258 Problems? Testing your Python...
dd558120d927 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2945
diff changeset
2259 ================================
dd558120d927 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2945
diff changeset
2260
dd558120d927 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2945
diff changeset
2261 .. note::
6297
a635a60ffb84 Remove standalone pytest run_tests.py bundle
John Rouillard <rouilj@ieee.org>
parents: 6265
diff changeset
2262 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
2263 distribution anymore. You should install:
7581
9dd27f40de4c docs: document dependencies required for testing
John Rouillard <rouilj@ieee.org>
parents: 7580
diff changeset
2264
9dd27f40de4c docs: document dependencies required for testing
John Rouillard <rouilj@ieee.org>
parents: 7580
diff changeset
2265 * pytest,
9dd27f40de4c docs: document dependencies required for testing
John Rouillard <rouilj@ieee.org>
parents: 7580
diff changeset
2266 * requests, and
9dd27f40de4c docs: document dependencies required for testing
John Rouillard <rouilj@ieee.org>
parents: 7580
diff changeset
2267 * mock
9dd27f40de4c docs: document dependencies required for testing
John Rouillard <rouilj@ieee.org>
parents: 7580
diff changeset
2268
7580
13af5f28207d docs: document dependencies required for testing
John Rouillard <rouilj@ieee.org>
parents: 7562
diff changeset
2269 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
2270 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
2271 `administration guide`_ for details.
2972
dd558120d927 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2945
diff changeset
2272
4317
15834821b8c7 - fix explicit python version description...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4315
diff changeset
2273 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
2274 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
2275 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
2276 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
2277 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
2278 ``-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
2279
7374
72de757edf78 issue2551220 - In installation.txt clarify source directory.
John Rouillard <rouilj@ieee.org>
parents: 7354
diff changeset
2280 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
2281 (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
2282 <../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
2283 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
2284 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
2285 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
2286 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
2287
7399
deb8e7e6d66d Skip redis tests if unable to communicate with the server.
John Rouillard <rouilj@ieee.org>
parents: 7374
diff changeset
2288 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
2289 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
2290 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
2291 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
2292 the test.
deb8e7e6d66d Skip redis tests if unable to communicate with the server.
John Rouillard <rouilj@ieee.org>
parents: 7374
diff changeset
2293
1287
5402a6f2a754 Added quotes around python interpreter in windows bat [SF#623963]
Richard Jones <richard@users.sourceforge.net>
parents: 1282
diff changeset
2294 .. _`user guide`: user_guide.html
4949
c3a90535f7a7 Backed out changeset 4a3a35192ad1
John Rouillard <rouilj@ieee.org>
parents: 4948
diff changeset
2295 .. _`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
2296 .. _`tracker configuration`: reference.html#tracker-configuration
1245
d8c98af869ff merge from maint-0-5
Richard Jones <richard@users.sourceforge.net>
parents: 1244
diff changeset
2297 .. _`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
2298 .. _`Roundup reference`: reference.html
692242b3effd initial pass to change references to reference doc where needed.
John Rouillard <rouilj@ieee.org>
parents: 7350
diff changeset
2299 .. _`reference documentation`: reference.html
5300
d8ed32b297e2 Update to migrating backend and tweak to install doc.
John Rouillard <rouilj@ieee.org>
parents: 5140
diff changeset
2300 .. _`preventing spam`: customizing.html#preventing-spam
2161
98656054ccfa *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2069
diff changeset
2301 .. _`Adding a new field to the classic schema`:
98656054ccfa *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2069
diff changeset
2302 customizing.html#adding-a-new-field-to-the-classic-schema
98656054ccfa *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2069
diff changeset
2303 .. _`Tracking different types of issues`:
98656054ccfa *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 2069
diff changeset
2304 customizing.html#tracking-different-types-of-issues
659
e429649ed124 More documentation cleanups.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2305 .. _`customising roundup`: customizing.html
882
b99948d32a2d clearing up ambiguous ref name
Richard Jones <richard@users.sourceforge.net>
parents: 798
diff changeset
2306 .. _`upgrading document`: upgrading.html
2003
a291bf753037 maintenance -> admin guide
Richard Jones <richard@users.sourceforge.net>
parents: 1965
diff changeset
2307 .. _`administration guide`: admin_guide.html
7340
7b9bddda9d2d Add support for demo mode in docker.
John Rouillard <rouilj@ieee.org>
parents: 7316
diff changeset
2308 .. _`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
2309 .. _`doc/postgresql.txt`: postgresql.html
e63f514bb0e6 issue2551201 - Update references to psycopg2
John Rouillard <rouilj@ieee.org>
parents: 6653
diff changeset
2310 .. _`doc/mysql.txt`: mysql.html
2554
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
2311
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
2312
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
2313 .. _External hyperlink targets:
52944e87909c added mod_python setup example
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2449
diff changeset
2314
6391
205bc1d27985 Added links for pyjwt, markdown libs, rearranged links.
John Rouillard <rouilj@ieee.org>
parents: 6390
diff changeset
2315
205bc1d27985 Added links for pyjwt, markdown libs, rearranged links.
John Rouillard <rouilj@ieee.org>
parents: 6390
diff changeset
2316
205bc1d27985 Added links for pyjwt, markdown libs, rearranged links.
John Rouillard <rouilj@ieee.org>
parents: 6390
diff changeset
2317 .. _`adding MySQL users`:
205bc1d27985 Added links for pyjwt, markdown libs, rearranged links.
John Rouillard <rouilj@ieee.org>
parents: 6390
diff changeset
2318 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
2319 .. _apache: https://httpd.apache.org/
6458
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
2320 .. _brotli: https://pypi.org/project/Brotli/
6391
205bc1d27985 Added links for pyjwt, markdown libs, rearranged links.
John Rouillard <rouilj@ieee.org>
parents: 6390
diff changeset
2321 .. _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
2322 .. _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
2323 .. _gpg: https://www.gnupg.org/software/gpgme/index.html
205bc1d27985 Added links for pyjwt, markdown libs, rearranged links.
John Rouillard <rouilj@ieee.org>
parents: 6390
diff changeset
2324 .. _jinja2: https://palletsprojects.com/p/jinja/
205bc1d27985 Added links for pyjwt, markdown libs, rearranged links.
John Rouillard <rouilj@ieee.org>
parents: 6390
diff changeset
2325 .. _markdown: https://python-markdown.github.io/
205bc1d27985 Added links for pyjwt, markdown libs, rearranged links.
John Rouillard <rouilj@ieee.org>
parents: 6390
diff changeset
2326 .. _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
2327 .. _mistune: https://pypi.org/project/mistune/
205bc1d27985 Added links for pyjwt, markdown libs, rearranged links.
John Rouillard <rouilj@ieee.org>
parents: 6390
diff changeset
2328 .. _mod_python: https://github.com/grisha/mod_python
5891
6e341009593b Deprecate mod_python issue2551005
John Rouillard <rouilj@ieee.org>
parents: 5878
diff changeset
2329 .. _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
2330 .. _MySQLdb: https://pypi.org/project/mysqlclient/
6391
205bc1d27985 Added links for pyjwt, markdown libs, rearranged links.
John Rouillard <rouilj@ieee.org>
parents: 6390
diff changeset
2331 .. _Olson tz database: https://www.iana.org/time-zones
6663
e63f514bb0e6 issue2551201 - Update references to psycopg2
John Rouillard <rouilj@ieee.org>
parents: 6653
diff changeset
2332 .. _Psycopg2: https://www.psycopg.org/
6391
205bc1d27985 Added links for pyjwt, markdown libs, rearranged links.
John Rouillard <rouilj@ieee.org>
parents: 6390
diff changeset
2333 .. _pyjwt: https://pypi.org/project/PyJWT/
6419
4d321d52d67d fix broken link for pyopenssl
John Rouillard <rouilj@ieee.org>
parents: 6391
diff changeset
2334 .. _pyopenssl: https://pypi.org/project/pyOpenSSL/
7608
cdc7490f510e docs: add mention of pyreadline3 under windows
John Rouillard <rouilj@ieee.org>
parents: 7603
diff changeset
2335 .. _pyreadline3: https://pypi.org/project/pyreadline3/
5756
e48b039b0ec0 issue2550966: fix suboptimal links in docs.
John Rouillard <rouilj@ieee.org>
parents: 5610
diff changeset
2336 .. _pysqlite: https://pysqlite.org/
6391
205bc1d27985 Added links for pyjwt, markdown libs, rearranged links.
John Rouillard <rouilj@ieee.org>
parents: 6390
diff changeset
2337 .. _pytz: https://pypi.org/project/pytz/
205bc1d27985 Added links for pyjwt, markdown libs, rearranged links.
John Rouillard <rouilj@ieee.org>
parents: 6390
diff changeset
2338 .. _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
2339 .. _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
2340 .. _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
2341 .. _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
2342 .. _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
2343 .. _Xapian: https://xapian.org/
6458
8f1b91756457 issue2551147 - Enable compression of http responses in roundup.
John Rouillard <rouilj@ieee.org>
parents: 6419
diff changeset
2344 .. _zstd: https://pypi.org/project/zstd/

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