##// END OF EJS Templates
Docs updates
marcink -
r3363:1a498b11 rhodecode-0.0.1.5.3 default
parent child Browse files
Show More
@@ -5,18 +5,18 b' RhodeCode'
5 About
5 About
6 -----
6 -----
7
7
8 ``RhodeCode`` is a fast and powerful management tool for Mercurial_ and GIT_
8 ``RhodeCode`` is a fast and powerful management tool for Mercurial_ and GIT_
9 with a built in push/pull server and full text search and code-review.
9 with a built in push/pull server, full text search and code-review.
10 It works on http/https and has a built in permission/authentication system with
10 It works on http/https and has a built in permission/authentication system with
11 the ability to authenticate via LDAP or ActiveDirectory. RhodeCode also provides
11 the ability to authenticate via LDAP or ActiveDirectory. RhodeCode also provides
12 simple API so it's easy integrable with existing external systems.
12 simple API so it's easy integrable with existing external systems.
13
13
14 RhodeCode is similar in some respects to github_ or bitbucket_,
14 RhodeCode is similar in some respects to github_ or bitbucket_,
15 however RhodeCode can be run as standalone hosted application on your own server.
15 however RhodeCode can be run as standalone hosted application on your own server.
16 It is open source and donation ware and focuses more on providing a customized,
16 It is open source and donation ware and focuses more on providing a customized,
17 self administered interface for Mercurial_ and GIT_ repositories.
17 self administered interface for Mercurial_ and GIT_ repositories.
18 RhodeCode works on \*nix systems and Windows it is powered by a vcs_ library
18 RhodeCode works on \*nix systems and Windows it is powered by a vcs_ library
19 that Lukasz Balcerzak and Marcin Kuzminski created to handle multiple
19 that Lukasz Balcerzak and Marcin Kuzminski created to handle multiple
20 different version control systems.
20 different version control systems.
21
21
22 RhodeCode uses `PEP386 versioning <http://www.python.org/dev/peps/pep-0386/>`_
22 RhodeCode uses `PEP386 versioning <http://www.python.org/dev/peps/pep-0386/>`_
@@ -29,7 +29,7 b' Stable releases of RhodeCode are best in'
29
29
30 Or::
30 Or::
31
31
32 pip install rhodecode
32 pip install rhodecode
33
33
34 Detailed instructions and links may be found on the Installation page.
34 Detailed instructions and links may be found on the Installation page.
35
35
@@ -51,7 +51,7 b' Source code'
51 -----------
51 -----------
52
52
53 The latest sources can be obtained from official RhodeCode instance
53 The latest sources can be obtained from official RhodeCode instance
54 https://secure.rhodecode.org
54 https://secure.rhodecode.org
55
55
56
56
57 MIRRORS:
57 MIRRORS:
@@ -68,7 +68,7 b' https://github.com/marcinkuzminski/rhode'
68 RhodeCode Features
68 RhodeCode Features
69 ------------------
69 ------------------
70
70
71 - Has its own middleware to handle mercurial_ and git_ protocol requests.
71 - Has its own middleware to handle mercurial_ and git_ protocol requests.
72 Each request is authenticated and logged together with IP address.
72 Each request is authenticated and logged together with IP address.
73 - Build for speed and performance. You can make multiple pulls/pushes simultaneous.
73 - Build for speed and performance. You can make multiple pulls/pushes simultaneous.
74 Proven to work with 1000s of repositories and users
74 Proven to work with 1000s of repositories and users
@@ -86,41 +86,41 b' RhodeCode Features'
86 changeset statuses, and notification system.
86 changeset statuses, and notification system.
87 - Importing and syncing repositories from remote locations for GIT_, Mercurial_ and SVN.
87 - Importing and syncing repositories from remote locations for GIT_, Mercurial_ and SVN.
88 - Mako templates let's you customize the look and feel of the application.
88 - Mako templates let's you customize the look and feel of the application.
89 - Beautiful diffs, annotations and source code browsing all colored by pygments.
89 - Beautiful diffs, annotations and source code browsing all colored by pygments.
90 Raw diffs are made in git-diff format for both VCS systems, including GIT_ binary-patches
90 Raw diffs are made in git-diff format for both VCS systems, including GIT_ binary-patches
91 - Mercurial_ and Git_ DAG graphs and yui-flot powered graphs with zooming and statistics
91 - Mercurial_ and Git_ DAG graphs and yui-flot powered graphs with zooming and statistics
92 to track activity for repositories
92 to track activity for repositories
93 - Admin interface with user/permission management. Admin activity journal, logs
93 - Admin interface with user/permission management. Admin activity journal, logs
94 pulls, pushes, forks, registrations and other actions made by all users.
94 pulls, pushes, forks, registrations and other actions made by all users.
95 - Server side forks. It is possible to fork a project and modify it freely
95 - Server side forks. It is possible to fork a project and modify it freely
96 without breaking the main repository.
96 without breaking the main repository.
97 - rst and markdown README support for repositories.
97 - rst and markdown README support for repositories.
98 - Full text search powered by Whoosh on the source files, commit messages, and file names.
98 - Full text search powered by Whoosh on the source files, commit messages, and file names.
99 Build in indexing daemons, with optional incremental index build
99 Build in indexing daemons, with optional incremental index build
100 (no external search servers required all in one application)
100 (no external search servers required all in one application)
101 - Setup project descriptions/tags and info inside built in db for easy, non
101 - Setup project descriptions/tags and info inside built in db for easy, non
102 file-system operations.
102 file-system operations.
103 - Intelligent cache with invalidation after push or project change, provides
103 - Intelligent cache with invalidation after push or project change, provides
104 high performance and always up to date data.
104 high performance and always up to date data.
105 - RSS / Atom feeds, gravatar support, downloadable sources as zip/tar/gz
105 - RSS / Atom feeds, gravatar support, downloadable sources as zip/tar/gz
106 - Optional async tasks for speed and performance using celery_
106 - Optional async tasks for speed and performance using celery_
107 - Backup scripts can do backup of whole app and send it over scp to desired
107 - Backup scripts can do backup of whole app and send it over scp to desired
108 location
108 location
109 - Based on pylons / sqlalchemy / sqlite / whoosh / vcs
109 - Based on pylons / sqlalchemy / sqlite / whoosh / vcs
110
110
111
111
112 Incoming / Plans
112 Incoming / Plans
113 ----------------
113 ----------------
114
114
115 - Finer granular permissions per branch, or subrepo
115 - Finer granular permissions per branch, or subrepo
116 - Web based merges for pull requests
116 - Web based merges for pull requests
117 - Tracking history for each lines in files
117 - Tracking history for each lines in files
118 - Simple issue tracker
118 - Simple issue tracker
119 - SSH based authentication with server side key management
119 - SSH based authentication with server side key management
120 - Commit based built in wiki system
120 - Commit based built in wiki system
121 - Gist server
121 - Gist server
122 - More statistics and graph (global annotation + some more statistics)
122 - More statistics and graph (global annotation + some more statistics)
123 - Other advancements as development continues (or you can of course make
123 - Other advancements as development continues (or you can of course make
124 additions and or requests)
124 additions and or requests)
125
125
126 License
126 License
@@ -135,10 +135,10 b' Getting help'
135 Listed bellow are various support resources that should help.
135 Listed bellow are various support resources that should help.
136
136
137 .. note::
137 .. note::
138
138
139 Please try to read the documentation before posting any issues, especially
139 Please try to read the documentation before posting any issues, especially
140 the **troubleshooting section**
140 the **troubleshooting section**
141
141
142 - Join the `Google group <http://groups.google.com/group/rhodecode>`_ and ask
142 - Join the `Google group <http://groups.google.com/group/rhodecode>`_ and ask
143 any questions.
143 any questions.
144
144
@@ -163,9 +163,9 b' You may also build the documentation for'
163 make html
163 make html
164
164
165 (You need to have sphinx_ installed to build the documentation. If you don't
165 (You need to have sphinx_ installed to build the documentation. If you don't
166 have sphinx_ installed you can install it via the command:
166 have sphinx_ installed you can install it via the command:
167 ``easy_install sphinx``)
167 ``easy_install sphinx``)
168
168
169 .. _virtualenv: http://pypi.python.org/pypi/virtualenv
169 .. _virtualenv: http://pypi.python.org/pypi/virtualenv
170 .. _python: http://www.python.org/
170 .. _python: http://www.python.org/
171 .. _sphinx: http://sphinx.pocoo.org/
171 .. _sphinx: http://sphinx.pocoo.org/
@@ -176,4 +176,4 b' have sphinx_ installed you can install i'
176 .. _git: http://git-scm.com/
176 .. _git: http://git-scm.com/
177 .. _celery: http://celeryproject.org/
177 .. _celery: http://celeryproject.org/
178 .. _Sphinx: http://sphinx.pocoo.org/
178 .. _Sphinx: http://sphinx.pocoo.org/
179 .. _vcs: http://pypi.python.org/pypi/vcs No newline at end of file
179 .. _vcs: http://pypi.python.org/pypi/vcs
@@ -4,6 +4,26 b''
4 Changelog
4 Changelog
5 =========
5 =========
6
6
7 1.5.3 (**2013-02-12**)
8 ----------------------
9
10 news
11 ++++
12
13 - IP restrictions now also enabled for IPv6
14
15 fixes
16 +++++
17
18 - fixed issues with private checkbox not always working
19 - fixed #746 unicodeDedode errors on feed controllers
20 - fixes issue #756 cleanup repos didn't properly compose paths of repos to be cleaned up.
21 - fixed cache invalidation issues together with vcs_full_cache option
22 - repo scan should skip directories with starting with '.'
23 - fixes for issue #731, update-repoinfo sometimes failed to update data when changesets
24 were initial commits
25 - recursive mode of setting permission skips private repositories
26
7 1.5.2 (**2013-01-14**)
27 1.5.2 (**2013-01-14**)
8 ----------------------
28 ----------------------
9
29
@@ -932,4 +952,4 b' 1.0.0rc2 (**2010-10-11**)'
932
952
933 - Disabled dirsize in file browser, it's causing nasty bug when dir renames
953 - Disabled dirsize in file browser, it's causing nasty bug when dir renames
934 occure. After vcs is fixed it'll be put back again.
954 occure. After vcs is fixed it'll be put back again.
935 - templating/css rewrites, optimized css. No newline at end of file
955 - templating/css rewrites, optimized css.
@@ -5,154 +5,196 b' Step by step Installation for Windows'
5 =====================================
5 =====================================
6
6
7
7
8 RhodeCode step-by-step install Guide for Windows
8 RhodeCode step-by-step install Guide for Windows
9
9
10 Target OS: Windows XP SP3 32bit English (Clean installation)
10 Target OS: Windows XP SP3 32bit English (Clean installation)
11 + All Windows Updates until 24-may-2012
11 + All Windows Updates until 24-may-2012
12
12
13 .. note::
13 .. note::
14
14
15 This installation is for 32bit systems, for 64bit windows you might need
15 This installation is for 32bit systems, for 64bit windows you might need
16 to download proper 64bit version of "Windows Installer" and Win32py
16 to download proper 64bit versions of the different packages(Windows Installer, Win32py extensions)
17 extensions
17 plus some extra tweaks.
18 These extra steps haven been marked as "64bit".
19 Tested on Windows Server 2008 R2 SP1, 9-feb-2013.
20 If you run into any 64bit related problems, please check these pages:
21 - http://blog.victorjabur.com/2011/06/05/compiling-python-2-7-modules-on-windows-32-and-64-using-msvc-2008-express/
22 - http://bugs.python.org/issue7511
18
23
19 Step1 - Install Visual Studio 2008 Express
24 Step1 - Install Visual Studio 2008 Express
20 ------------------------------------------
25 ------------------------------------------
21
26
22
27
23 Optional: You can also install MingW, but VS2008 installation is easier
28 Optional: You can also install MingW, but VS2008 installation is easier
24
29
25 Download "Visual C++ 2008 Express Edition with SP1" from:
30 Download "Visual C++ 2008 Express Edition with SP1" from:
26 http://www.microsoft.com/visualstudio/en-us/products/2008-editions/express
31 http://www.microsoft.com/visualstudio/en-us/products/2008-editions/express
27 (if not found or relocated, google for "visual studio 2008 express" for
32 (if not found or relocated, google for "visual studio 2008 express" for
28 updated link)
33 updated link)
29
34
30 You can also download full ISO file for offline installation, just
35 You can also download full ISO file for offline installation, just
31 choose "All - Offline Install ISO image file" in the previous page and
36 choose "All - Offline Install ISO image file" in the previous page and
32 choose "Visual C++ 2008 Express" when installing.
37 choose "Visual C++ 2008 Express" when installing.
33
34
38
35 .. note::
39 .. note::
36
40
37 Silverlight Runtime and SQL Server 2008 Express Edition are not
41 Using other versions of Visual Studio will lead to random crashes.
38 required, you can uncheck them
42 You must use Visual Studio 2008!"
43
44 .. note::
45
46 Silverlight Runtime and SQL Server 2008 Express Edition are not
47 required, you can uncheck them
48
49 .. note::
50
51 64bit: You also need to install the Microsoft Windows SDK for .NET 3.5 SP1 (.NET 4.0 won't work).
52 Download from: http://www.microsoft.com/en-us/download/details.aspx?id=3138
53
54 .. note::
55
56 64bit: You also need to copy and rename a .bat file to make the Visual C++ compiler work.
57 I am not sure why this is not necessary for 32bit.
58 Copy C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\vcvars64.bat to C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\amd64\vcvarsamd64.bat
39
59
40
60
41 Step2 - Install Python
61 Step2 - Install Python
42 ----------------------
62 ----------------------
43
63
44 Install Python 2.x.y (x >= 5) x86 version (32bit). DO NOT USE A 3.x version.
64 Install Python 2.x.y (x >= 5) x86 version (32bit). DO NOT USE A 3.x version.
45 Download Python 2.x.y from:
65 Download Python 2.x.y from:
46 http://www.python.org/download/
66 http://www.python.org/download/
47
67
48 Choose "Windows Installer" (32bit version) not "Windows X86-64
68 Choose "Windows Installer" (32bit version) not "Windows X86-64
49 Installer". While writing this guide, the latest version was v2.7.3.
69 Installer". While writing this guide, the latest version was v2.7.3.
50 Remember the specific major and minor version installed, because it will
70 Remember the specific major and minor version installed, because it will
51 be needed in the next step. In this case, it is "2.7".
71 be needed in the next step. In this case, it is "2.7".
52
72
73 .. note::
74
75 64bit: Just download and install the 64bit version of python.
53
76
54 Step3 - Install Win32py extensions
77 Step3 - Install Win32py extensions
55 ----------------------------------
78 ----------------------------------
56
79
57 Download pywin32 from:
80 Download pywin32 from:
58 http://sourceforge.net/projects/pywin32/files/
81 http://sourceforge.net/projects/pywin32/files/
59
82
60 - Click on "pywin32" folder
83 - Click on "pywin32" folder
61 - Click on the first folder (in this case, Build 217, maybe newer when you try)
84 - Click on the first folder (in this case, Build 217, maybe newer when you try)
62 - Choose the file ending with ".win32-py2.x.exe" -> x being the minor
85 - Choose the file ending with ".win32-py2.x.exe" -> x being the minor
63 version of Python you installed (in this case, 7)
86 version of Python you installed (in this case, 7)
64 When writing this guide, the file was:
87 When writing this guide, the file was:
65 http://sourceforge.net/projects/pywin32/files/pywin32/Build%20217/pywin32-217.win32-py2.7.exe/download
88 http://sourceforge.net/projects/pywin32/files/pywin32/Build%20217/pywin32-217.win32-py2.7.exe/download
66
89
90 .. note::
91
92 64bit: Download and install the 64bit version.
93 At the time of writing you can find this at:
94 http://sourceforge.net/projects/pywin32/files/pywin32/Build%20218/pywin32-218.win-amd64-py2.7.exe/download
67
95
68 Step4 - Python BIN
96 Step4 - Python BIN
69 ------------------
97 ------------------
70
98
71 Add Python BIN folder to the path
99 Add Python BIN folder to the path
72
100
73 You have to add the Python folder to the path, you can do it manually
101 You have to add the Python folder to the path, you can do it manually
74 (editing "PATH" environment variable) or using Windows Support Tools
102 (editing "PATH" environment variable) or using Windows Support Tools
75 that came preinstalled in Vista/7 and can be installed in Windows XP.
103 that came preinstalled in Vista/7 and can be installed in Windows XP.
76
104
77 - Using support tools on WINDOWS XP:
105 - Using support tools on WINDOWS XP:
78 If you use Windows XP you can install them using Windows XP CD and
106 If you use Windows XP you can install them using Windows XP CD and
79 navigating to \SUPPORT\TOOLS. There, execute Setup.EXE (not MSI).
107 navigating to \SUPPORT\TOOLS. There, execute Setup.EXE (not MSI).
80 Afterwards, open a CMD and type::
108 Afterwards, open a CMD and type::
81
109
82 SETX PATH "%PATH%;[your-python-path]" -M
110 SETX PATH "%PATH%;[your-python-path]" -M
83
111
84 Close CMD (the path variable will be updated then)
112 Close CMD (the path variable will be updated then)
85
113
86 - Using support tools on WINDOWS Vista/7:
114 - Using support tools on WINDOWS Vista/7:
87
115
88 Open a CMD and type::
116 Open a CMD and type::
89
117
90 SETX PATH "%PATH%;[your-python-path]" /M
118 SETX PATH "%PATH%;[your-python-path]" /M
91
119
92 Please substitute [your-python-path] with your Python installation path.
120 Please substitute [your-python-path] with your Python installation path.
93 Typically: C:\\Python27
121 Typically: C:\\Python27
94
122
95
123
96 Step5 - RhodeCode folder structure
124 Step5 - RhodeCode folder structure
97 ----------------------------------
125 ----------------------------------
98
126
99 Create a RhodeCode folder structure
127 Create a RhodeCode folder structure
100
128
101 This is only a example to install RhodeCode, you can of course change
129 This is only a example to install RhodeCode, you can of course change
102 it. However, this guide will follow the proposed structure, so please
130 it. However, this guide will follow the proposed structure, so please
103 later adapt the paths if you change them. My recommendation is to use
131 later adapt the paths if you change them. My recommendation is to use
104 folders with NO SPACES. But you can try if you are brave...
132 folders with NO SPACES. But you can try if you are brave...
105
133
106 Create the following folder structure::
134 Create the following folder structure::
107
135
108 C:\RhodeCode
136 C:\RhodeCode
109 C:\RhodeCode\Bin
137 C:\RhodeCode\Bin
110 C:\RhodeCode\Env
138 C:\RhodeCode\Env
111 C:\RhodeCode\Repos
139 C:\RhodeCode\Repos
112
140
113
141
114 Step6 - Install virtualenv
142 Step6 - Install virtualenv
115 ---------------------------
143 ---------------------------
116
144
117 Install Virtual Env for Python
145 Install Virtual Env for Python
118
146
119 Navigate to: http://www.virtualenv.org/en/latest/index.html#installation
147 Navigate to: http://www.virtualenv.org/en/latest/index.html#installation
120 Right click on "virtualenv.py" file and choose "Save link as...".
148 Right click on "virtualenv.py" file and choose "Save link as...".
121 Download to C:\\RhodeCode (or whatever you want)
149 Download to C:\\RhodeCode (or whatever you want)
122 (the file is located at
150 (the file is located at
123 https://raw.github.com/pypa/virtualenv/master/virtualenv.py)
151 https://raw.github.com/pypa/virtualenv/master/virtualenv.py)
124
152
125 Create a virtual Python environment in C:\\RhodeCode\\Env (or similar). To
153 Create a virtual Python environment in C:\\RhodeCode\\Env (or similar). To
126 do so, open a CMD (Python Path should be included in Step3), navigate
154 do so, open a CMD (Python Path should be included in Step3), navigate
127 where you downloaded "virtualenv.py", and write::
155 where you downloaded "virtualenv.py", and write::
128
156
129 python virtualenv.py C:\RhodeCode\Env
157 python virtualenv.py C:\RhodeCode\Env
130
158
131 (--no-site-packages is now the default behaviour of virtualenv, no need
159 (--no-site-packages is now the default behaviour of virtualenv, no need
132 to include it)
160 to include it)
133
161
134
162
135 Step7 - Install RhodeCode
163 Step7 - Install RhodeCode
136 -------------------------
164 -------------------------
137
165
138 Finally, install RhodeCode
166 Finally, install RhodeCode
167
168 Close previously opened command prompt/s, and open a Visual Studio 2008
169 Command Prompt (**IMPORTANT!!**). To do so, go to Start Menu, and then open
170 "Microsoft Visual C++ 2008 Express Edition" -> "Visual Studio Tools" ->
171 "Visual Studio 2008 Command Prompt"
172
173 .. note::
139
174
140 Close previously opened command prompt/s, and open a Visual Studio 2008
175 64bit: For 64bit you need to modify the shortcut that is used to start the
141 Command Prompt (**IMPORTANT!!**). To do so, go to Start Menu, and then open
176 Visual Studio 2008 Command Prompt. Use right-mouse click to open properties.
142 "Microsoft Visual C++ 2008 Express Edition" -> "Visual Studio Tools" ->
177
143 "Visual Studio 2008 Command Prompt"
178 Change commandline from::
179
180 %comspec% /k ""C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\vcvarsall.bat"" x86
181
182 to::
183
184 %comspec% /k ""C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\vcvarsall.bat"" amd64
185
144
186
145 In that CMD (loaded with VS2008 PATHs) type::
187 In that CMD (loaded with VS2008 PATHs) type::
146
188
147 cd C:\RhodeCode\Env\Scripts (or similar)
189 cd C:\RhodeCode\Env\Scripts (or similar)
148 activate
190 activate
149
191
150 The prompt will change into "(Env) C:\\RhodeCode\\Env\\Scripts" or similar
192 The prompt will change into "(Env) C:\\RhodeCode\\Env\\Scripts" or similar
151 (depending of your folder structure). Then type::
193 (depending of your folder structure). Then type::
152
194
153 pip install rhodecode
195 pip install rhodecode
154
196
155 (long step, please wait until fully complete)
197 (long step, please wait until fully complete)
156
198
157 Some warnings will appear, don't worry as they are normal.
199 Some warnings will appear, don't worry as they are normal.
158
200
@@ -161,90 +203,90 b' Step8 - Configuring RhodeCode'
161 -----------------------------
203 -----------------------------
162
204
163
205
164 steps taken from http://packages.python.org/RhodeCode/setup.html
206 steps taken from http://packages.python.org/RhodeCode/setup.html
165
207
166 You have to use the same Visual Studio 2008 command prompt as Step7, so
208 You have to use the same Visual Studio 2008 command prompt as Step7, so
167 if you closed it reopen it following the same commands (including the
209 if you closed it reopen it following the same commands (including the
168 "activate" one). When ready, just type::
210 "activate" one). When ready, just type::
169
211
170 cd C:\RhodeCode\Bin
212 cd C:\RhodeCode\Bin
171 paster make-config RhodeCode production.ini
213 paster make-config RhodeCode production.ini
172
214
173 Then, you must edit production.ini to fit your needs (ip address, ip
215 Then, you must edit production.ini to fit your needs (ip address, ip
174 port, mail settings, database, whatever). I recommend using NotePad++
216 port, mail settings, database, whatever). I recommend using NotePad++
175 (free) or similar text editor, as it handles well the EndOfLine
217 (free) or similar text editor, as it handles well the EndOfLine
176 character differences between Unix and Windows
218 character differences between Unix and Windows
177 (http://notepad-plus-plus.org/)
219 (http://notepad-plus-plus.org/)
178
220
179 For the sake of simplicity lets run it with the default settings. After
221 For the sake of simplicity lets run it with the default settings. After
180 your edits (if any), in the previous Command Prompt, type::
222 your edits (if any), in the previous Command Prompt, type::
181
182 paster setup-rhodecode production.ini
183
223
184 (this time a NEW database will be installed, you must follow a different
224 paster setup-rhodecode production.ini
185 step to later UPGRADE to a newer RhodeCode version)
225
226 (this time a NEW database will be installed, you must follow a different
227 step to later UPGRADE to a newer RhodeCode version)
186
228
187 The script will ask you for confirmation about creating a NEW database,
229 The script will ask you for confirmation about creating a NEW database,
188 answer yes (y)
230 answer yes (y)
189 The script will ask you for repository path, answer C:\\RhodeCode\\Repos
231 The script will ask you for repository path, answer C:\\RhodeCode\\Repos
190 (or similar)
232 (or similar)
191 The script will ask you for admin username and password, answer "admin"
233 The script will ask you for admin username and password, answer "admin"
192 + "123456" (or whatever you want)
234 + "123456" (or whatever you want)
193 The script will ask you for admin mail, answer "admin@xxxx.com" (or
235 The script will ask you for admin mail, answer "admin@xxxx.com" (or
194 whatever you want)
236 whatever you want)
195
237
196 If you make some mistake and the script does not end, don't worry, start
238 If you make some mistake and the script does not end, don't worry, start
197 it again.
239 it again.
198
240
199
241
200 Step9 - Running RhodeCode
242 Step9 - Running RhodeCode
201 -------------------------
243 -------------------------
202
244
203
245
204 In the previous command prompt, being in the C:\\RhodeCode\\Bin folder,
246 In the previous command prompt, being in the C:\\RhodeCode\\Bin folder,
205 just type::
247 just type::
206
248
207 paster serve production.ini
249 paster serve production.ini
208
250
209 Open yout web server, and go to http://127.0.0.1:5000
251 Open yout web server, and go to http://127.0.0.1:5000
210
252
211 It works!! :-)
253 It works!! :-)
212
254
213 Remark:
255 Remark:
214 If it does not work first time, just Ctrl-C the CMD process and start it
256 If it does not work first time, just Ctrl-C the CMD process and start it
215 again. Don't forget the "http://" in Internet Explorer
257 again. Don't forget the "http://" in Internet Explorer
216
258
217
259
218
260
219 What this Guide does not cover:
261 What this Guide does not cover:
220
262
221 - Installing Celery
263 - Installing Celery
222 - Running RhodeCode as Windows Service. You can investigate here:
264 - Running RhodeCode as Windows Service. You can investigate here:
223
265
224 - http://pypi.python.org/pypi/wsgisvc
266 - http://pypi.python.org/pypi/wsgisvc
225 - http://ryrobes.com/python/running-python-scripts-as-a-windows-service/
267 - http://ryrobes.com/python/running-python-scripts-as-a-windows-service/
226 - http://wiki.pylonshq.com/display/pylonscookbook/How+to+run+Pylons+as+a+Windows+service
268 - http://wiki.pylonshq.com/display/pylonscookbook/How+to+run+Pylons+as+a+Windows+service
227
269
228 - Using Apache. You can investigate here:
270 - Using Apache. You can investigate here:
229
271
230 - https://groups.google.com/group/rhodecode/msg/c433074e813ffdc4
272 - https://groups.google.com/group/rhodecode/msg/c433074e813ffdc4
231
273
232
274
233 Upgrading
275 Upgrading
234 =========
276 =========
235
277
236 Stop running RhodeCode
278 Stop running RhodeCode
237 Open a CommandPrompt like in Step7 (VS2008 path + activate) and type::
279 Open a CommandPrompt like in Step7 (VS2008 path + activate) and type::
238
280
239 easy_install -U rhodecode
281 easy_install -U rhodecode
240 cd \RhodeCode\Bin
282 cd \RhodeCode\Bin
241
283
242 { backup your production.ini file now} ::
284 { backup your production.ini file now} ::
243
285
244 paster make-config RhodeCode production.ini
286 paster make-config RhodeCode production.ini
245
287
246 (check changes and update your production.ini accordingly) ::
288 (check changes and update your production.ini accordingly) ::
247
289
248 paster upgrade-db production.ini (update database)
290 paster upgrade-db production.ini (update database)
249
291
250 Full steps in http://packages.python.org/RhodeCode/upgrade.html No newline at end of file
292 Full steps in http://packages.python.org/RhodeCode/upgrade.html
@@ -8,14 +8,14 b' Setup'
8 Setting up RhodeCode
8 Setting up RhodeCode
9 --------------------
9 --------------------
10
10
11 First, you will need to create a RhodeCode configuration file. Run the
11 First, you will need to create a RhodeCode configuration file. Run the
12 following command to do this::
12 following command to do this::
13
13
14 paster make-config RhodeCode production.ini
14 paster make-config RhodeCode production.ini
15
15
16 - This will create the file `production.ini` in the current directory. This
16 - This will create the file `production.ini` in the current directory. This
17 configuration file contains the various settings for RhodeCode, e.g proxy
17 configuration file contains the various settings for RhodeCode, e.g proxy
18 port, email settings, usage of static files, cache, celery settings and
18 port, email settings, usage of static files, cache, celery settings and
19 logging.
19 logging.
20
20
21
21
@@ -30,36 +30,36 b' the following command::'
30
30
31 This will prompt you for a "root" path. This "root" path is the location where
31 This will prompt you for a "root" path. This "root" path is the location where
32 RhodeCode will store all of its repositories on the current machine. After
32 RhodeCode will store all of its repositories on the current machine. After
33 entering this "root" path ``setup-rhodecode`` will also prompt you for a username
33 entering this "root" path ``setup-rhodecode`` will also prompt you for a username
34 and password for the initial admin account which ``setup-rhodecode`` sets
34 and password for the initial admin account which ``setup-rhodecode`` sets
35 up for you.
35 up for you.
36
36
37 setup process can be fully automated, example for lazy::
37 setup process can be fully automated, example for lazy::
38
38
39 paster setup-rhodecode production.ini --user=marcink --password=secret --email=marcin@rhodecode.org --repos=/home/marcink/my_repos
39 paster setup-rhodecode production.ini --user=marcink --password=secret --email=marcin@rhodecode.org --repos=/home/marcink/my_repos
40
40
41
41
42 - The ``setup-rhodecode`` command will create all of the needed tables and an
42 - The ``setup-rhodecode`` command will create all of the needed tables and an
43 admin account. When choosing a root path you can either use a new empty
43 admin account. When choosing a root path you can either use a new empty
44 location, or a location which already contains existing repositories. If you
44 location, or a location which already contains existing repositories. If you
45 choose a location which contains existing repositories RhodeCode will simply
45 choose a location which contains existing repositories RhodeCode will simply
46 add all of the repositories at the chosen location to it's database.
46 add all of the repositories at the chosen location to it's database.
47 (Note: make sure you specify the correct path to the root).
47 (Note: make sure you specify the correct path to the root).
48 - Note: the given path for mercurial_ repositories **must** be write accessible
48 - Note: the given path for mercurial_ repositories **must** be write accessible
49 for the application. It's very important since the RhodeCode web interface
49 for the application. It's very important since the RhodeCode web interface
50 will work without write access, but when trying to do a push it will
50 will work without write access, but when trying to do a push it will
51 eventually fail with permission denied errors unless it has write access.
51 eventually fail with permission denied errors unless it has write access.
52
52
53 You are now ready to use RhodeCode, to run it simply execute::
53 You are now ready to use RhodeCode, to run it simply execute::
54
54
55 paster serve production.ini
55 paster serve production.ini
56
56
57 - This command runs the RhodeCode server. The web app should be available at the
57 - This command runs the RhodeCode server. The web app should be available at the
58 127.0.0.1:5000. This ip and port is configurable via the production.ini
58 127.0.0.1:5000. This ip and port is configurable via the production.ini
59 file created in previous step
59 file created in previous step
60 - Use the admin account you created above when running ``setup-rhodecode``
60 - Use the admin account you created above when running ``setup-rhodecode``
61 to login to the web app.
61 to login to the web app.
62 - The default permissions on each repository is read, and the owner is admin.
62 - The default permissions on each repository is read, and the owner is admin.
63 Remember to update these if needed.
63 Remember to update these if needed.
64 - In the admin panel you can toggle ldap, anonymous, permissions settings. As
64 - In the admin panel you can toggle ldap, anonymous, permissions settings. As
65 well as edit more advanced options on users and repositories
65 well as edit more advanced options on users and repositories
@@ -70,10 +70,10 b' functionality. To do this simply execute'
70 paster make-rcext production.ini
70 paster make-rcext production.ini
71
71
72 This will create `rcextensions` package in the same place that your `ini` file
72 This will create `rcextensions` package in the same place that your `ini` file
73 lives. With `rcextensions` it's possible to add additional mapping for whoosh,
73 lives. With `rcextensions` it's possible to add additional mapping for whoosh,
74 stats and add additional code into the push/pull/create/delete repo hooks.
74 stats and add additional code into the push/pull/create/delete repo hooks.
75 For example for sending signals to build-bots such as jenkins.
75 For example for sending signals to build-bots such as jenkins.
76 Please see the `__init__.py` file inside `rcextensions` package
76 Please see the `__init__.py` file inside `rcextensions` package
77 for more details.
77 for more details.
78
78
79
79
@@ -86,11 +86,11 b' parallel with RhodeCode. (Repository acc'
86 the box" feature of mercurial_ and you can use this to access any of the
86 the box" feature of mercurial_ and you can use this to access any of the
87 repositories that RhodeCode is hosting. See PublishingRepositories_)
87 repositories that RhodeCode is hosting. See PublishingRepositories_)
88
88
89 RhodeCode repository structures are kept in directories with the same name
89 RhodeCode repository structures are kept in directories with the same name
90 as the project. When using repository groups, each group is a subdirectory.
90 as the project. When using repository groups, each group is a subdirectory.
91 This allows you to easily use ssh for accessing repositories.
91 This allows you to easily use ssh for accessing repositories.
92
92
93 In order to use ssh you need to make sure that your web-server and the users
93 In order to use ssh you need to make sure that your web-server and the users
94 login accounts have the correct permissions set on the appropriate directories.
94 login accounts have the correct permissions set on the appropriate directories.
95 (Note that these permissions are independent of any permissions you have set up
95 (Note that these permissions are independent of any permissions you have set up
96 using the RhodeCode web interface.)
96 using the RhodeCode web interface.)
@@ -108,17 +108,17 b' Note: In an advanced setup, in order for'
108 permissions as set up via the RhodeCode web interface, you can create an
108 permissions as set up via the RhodeCode web interface, you can create an
109 authentication hook to connect to the rhodecode db and runs check functions for
109 authentication hook to connect to the rhodecode db and runs check functions for
110 permissions against that.
110 permissions against that.
111
111
112 Setting up Whoosh full text search
112 Setting up Whoosh full text search
113 ----------------------------------
113 ----------------------------------
114
114
115 Starting from version 1.1 the whoosh index can be build by using the paster
115 Starting from version 1.1 the whoosh index can be build by using the paster
116 command ``make-index``. To use ``make-index`` you must specify the configuration
116 command ``make-index``. To use ``make-index`` you must specify the configuration
117 file that stores the location of the index. You may specify the location of the
117 file that stores the location of the index. You may specify the location of the
118 repositories (`--repo-location`). If not specified, this value is retrieved
118 repositories (`--repo-location`). If not specified, this value is retrieved
119 from the RhodeCode database. This was required prior to 1.2. Starting from
119 from the RhodeCode database. This was required prior to 1.2. Starting from
120 version 1.2 it is also possible to specify a comma separated list of
120 version 1.2 it is also possible to specify a comma separated list of
121 repositories (`--index-only`) to build index only on chooses repositories
121 repositories (`--index-only`) to build index only on chooses repositories
122 skipping any other found in repos location
122 skipping any other found in repos location
123
123
124 You may optionally pass the option `-f` to enable a full index rebuild. Without
124 You may optionally pass the option `-f` to enable a full index rebuild. Without
@@ -126,24 +126,24 b' the `-f` option, indexing will run alway'
126
126
127 For an incremental index build use::
127 For an incremental index build use::
128
128
129 paster make-index production.ini
129 paster make-index production.ini
130
130
131 For a full index rebuild use::
131 For a full index rebuild use::
132
132
133 paster make-index production.ini -f
133 paster make-index production.ini -f
134
134
135
135
136 building index just for chosen repositories is possible with such command::
136 building index just for chosen repositories is possible with such command::
137
137
138 paster make-index production.ini --index-only=vcs,rhodecode
138 paster make-index production.ini --index-only=vcs,rhodecode
139
139
140
140
141 In order to do periodical index builds and keep your index always up to date.
141 In order to do periodical index builds and keep your index always up to date.
142 It's recommended to do a crontab entry for incremental indexing.
142 It's recommended to do a crontab entry for incremental indexing.
143 An example entry might look like this::
143 An example entry might look like this::
144
144
145 /path/to/python/bin/paster make-index /path/to/rhodecode/production.ini
145 /path/to/python/bin/paster make-index /path/to/rhodecode/production.ini
146
146
147 When using incremental mode (the default) whoosh will check the last
147 When using incremental mode (the default) whoosh will check the last
148 modification date of each file and add it to be reindexed if a newer file is
148 modification date of each file and add it to be reindexed if a newer file is
149 available. The indexing daemon checks for any removed files and removes them
149 available. The indexing daemon checks for any removed files and removes them
@@ -157,19 +157,19 b' Setting up LDAP support'
157 -----------------------
157 -----------------------
158
158
159 RhodeCode starting from version 1.1 supports ldap authentication. In order
159 RhodeCode starting from version 1.1 supports ldap authentication. In order
160 to use LDAP, you have to install the python-ldap_ package. This package is
160 to use LDAP, you have to install the python-ldap_ package. This package is
161 available via pypi, so you can install it by running
161 available via pypi, so you can install it by running
162
162
163 using easy_install::
163 using easy_install::
164
164
165 easy_install python-ldap
165 easy_install python-ldap
166
166
167 using pip::
167 using pip::
168
168
169 pip install python-ldap
169 pip install python-ldap
170
170
171 .. note::
171 .. note::
172 python-ldap requires some certain libs on your system, so before installing
172 python-ldap requires some certain libs on your system, so before installing
173 it check that you have at least `openldap`, and `sasl` libraries.
173 it check that you have at least `openldap`, and `sasl` libraries.
174
174
175 LDAP settings are located in admin->ldap section,
175 LDAP settings are located in admin->ldap section,
@@ -232,12 +232,12 b' Connection Security : required'
232
232
233 No encryption
233 No encryption
234 Plain non encrypted connection
234 Plain non encrypted connection
235
235
236 LDAPS connection
236 LDAPS connection
237 Enable ldaps connection. It will likely require `Port`_ to be set to
237 Enable ldaps connection. It will likely require `Port`_ to be set to
238 a different value (standard LDAPS port is 636). When LDAPS is enabled
238 a different value (standard LDAPS port is 636). When LDAPS is enabled
239 then `Certificate Checks`_ is required.
239 then `Certificate Checks`_ is required.
240
240
241 START_TLS on LDAP connection
241 START_TLS on LDAP connection
242 START TLS connection
242 START TLS connection
243
243
@@ -245,7 +245,7 b' Connection Security : required'
245
245
246 Certificate Checks : optional
246 Certificate Checks : optional
247 How SSL certificates verification is handled - this is only useful when
247 How SSL certificates verification is handled - this is only useful when
248 `Enable LDAPS`_ is enabled. Only DEMAND or HARD offer full SSL security
248 `Enable LDAPS`_ is enabled. Only DEMAND or HARD offer full SSL security
249 while the other options are susceptible to man-in-the-middle attacks. SSL
249 while the other options are susceptible to man-in-the-middle attacks. SSL
250 certificates can be installed to /etc/openldap/cacerts so that the
250 certificates can be installed to /etc/openldap/cacerts so that the
251 DEMAND or HARD options can be used with self-signed certificates or
251 DEMAND or HARD options can be used with self-signed certificates or
@@ -305,7 +305,7 b' LDAP Search Scope : required'
305
305
306 .. _Login Attribute:
306 .. _Login Attribute:
307
307
308 Login Attribute : required
308 Login Attribute : required
309 The LDAP record attribute that will be matched as the USERNAME or
309 The LDAP record attribute that will be matched as the USERNAME or
310 ACCOUNT used to connect to RhodeCode. This will be added to `LDAP
310 ACCOUNT used to connect to RhodeCode. This will be added to `LDAP
311 Filter`_ for locating the User object. If `LDAP Filter`_ is specified as
311 Filter`_ for locating the User object. If `LDAP Filter`_ is specified as
@@ -423,7 +423,7 b' reverse-proxy setup with basic auth::'
423 RewriteCond %{LA-U:REMOTE_USER} (.+)
423 RewriteCond %{LA-U:REMOTE_USER} (.+)
424 RewriteRule .* - [E=RU:%1]
424 RewriteRule .* - [E=RU:%1]
425 RequestHeader set X-Forwarded-User %{RU}e
425 RequestHeader set X-Forwarded-User %{RU}e
426 </Location>
426 </Location>
427
427
428 In order for RhodeCode to start using the forwarded username, you should set
428 In order for RhodeCode to start using the forwarded username, you should set
429 the following in the [app:main] section of your .ini file::
429 the following in the [app:main] section of your .ini file::
@@ -450,27 +450,27 b' uncomment following variables in the ini'
450
450
451 `url_pat` is the regular expression that will fetch issues from commit messages.
451 `url_pat` is the regular expression that will fetch issues from commit messages.
452 Default regex will match issues in format of #<number> eg. #300.
452 Default regex will match issues in format of #<number> eg. #300.
453
453
454 Matched issues will be replace with the link specified as `issue_server_link`
454 Matched issues will be replace with the link specified as `issue_server_link`
455 {id} will be replaced with issue id, and {repo} with repository name.
455 {id} will be replaced with issue id, and {repo} with repository name.
456 Since the # is striped `issue_prefix` is added as a prefix to url.
456 Since the # is striped `issue_prefix` is added as a prefix to url.
457 `issue_prefix` can be something different than # if you pass
457 `issue_prefix` can be something different than # if you pass
458 ISSUE- as issue prefix this will generate an url in format::
458 ISSUE- as issue prefix this will generate an url in format::
459
459
460 <a href="https://myissueserver.com/example_repo/issue/300">ISSUE-300</a>
460 <a href="https://myissueserver.com/example_repo/issue/300">ISSUE-300</a>
461
461
462 Hook management
462 Hook management
463 ---------------
463 ---------------
464
464
465 Hooks can be managed in similar way to this used in .hgrc files.
465 Hooks can be managed in similar way to this used in .hgrc files.
466 To access hooks setting click `advanced setup` on Hooks section of Mercurial
466 To access hooks setting click `advanced setup` on Hooks section of Mercurial
467 Settings in Admin.
467 Settings in Admin.
468
468
469 There are 4 built in hooks that cannot be changed (only enable/disable by
469 There are 4 built in hooks that cannot be changed (only enable/disable by
470 checkboxes on previos section).
470 checkboxes on previos section).
471 To add another custom hook simply fill in first section with
471 To add another custom hook simply fill in first section with
472 <name>.<hook_type> and the second one with hook path. Example hooks
472 <name>.<hook_type> and the second one with hook path. Example hooks
473 can be found at *rhodecode.lib.hooks*.
473 can be found at *rhodecode.lib.hooks*.
474
474
475
475
476 Changing default encoding
476 Changing default encoding
@@ -488,7 +488,7 b' Setting Up Celery'
488 -----------------
488 -----------------
489
489
490 Since version 1.1 celery is configured by the rhodecode ini configuration files.
490 Since version 1.1 celery is configured by the rhodecode ini configuration files.
491 Simply set use_celery=true in the ini file then add / change the configuration
491 Simply set use_celery=true in the ini file then add / change the configuration
492 variables inside the ini file.
492 variables inside the ini file.
493
493
494 Remember that the ini files use the format with '.' not with '_' like celery.
494 Remember that the ini files use the format with '.' not with '_' like celery.
@@ -501,9 +501,9 b' In order to start using celery run::'
501
501
502
502
503 .. note::
503 .. note::
504 Make sure you run this command from the same virtualenv, and with the same
504 Make sure you run this command from the same virtualenv, and with the same
505 user that rhodecode runs.
505 user that rhodecode runs.
506
506
507 HTTPS support
507 HTTPS support
508 -------------
508 -------------
509
509
@@ -511,7 +511,7 b' There are two ways to enable https:'
511
511
512 - Set HTTP_X_URL_SCHEME in your http server headers, than rhodecode will
512 - Set HTTP_X_URL_SCHEME in your http server headers, than rhodecode will
513 recognize this headers and make proper https redirections
513 recognize this headers and make proper https redirections
514 - Alternatively, change the `force_https = true` flag in the ini configuration
514 - Alternatively, change the `force_https = true` flag in the ini configuration
515 to force using https, no headers are needed than to enable https
515 to force using https, no headers are needed than to enable https
516
516
517
517
@@ -526,39 +526,49 b' Sample config for nginx using proxy::'
526 #server 127.0.0.1:5001;
526 #server 127.0.0.1:5001;
527 #server 127.0.0.1:5002;
527 #server 127.0.0.1:5002;
528 }
528 }
529
529
530 server {
530 server {
531 listen 80;
531 listen 443;
532 server_name hg.myserver.com;
532 server_name rhodecode.myserver.com;
533 access_log /var/log/nginx/rhodecode.access.log;
533 access_log /var/log/nginx/rhodecode.access.log;
534 error_log /var/log/nginx/rhodecode.error.log;
534 error_log /var/log/nginx/rhodecode.error.log;
535
535
536 ssl on;
537 ssl_certificate rhodecode.myserver.com.crt;
538 ssl_certificate_key rhodecode.myserver.com.key;
539
540 ssl_session_timeout 5m;
541
542 ssl_protocols SSLv3 TLSv1;
543 ssl_ciphers DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:EDH-RSA-DES-CBC3-SHA:AES256-SHA:DES-CBC3-SHA:AES128-SHA:RC4-SHA:RC4-MD5;
544 ssl_prefer_server_ciphers on;
545
536 # uncomment if you have nginx with chunking module compiled
546 # uncomment if you have nginx with chunking module compiled
537 # fixes the issues of having to put postBuffer data for large git
547 # fixes the issues of having to put postBuffer data for large git
538 # pushes
548 # pushes
539 #chunkin on;
549 #chunkin on;
540 #error_page 411 = @my_411_error;
550 #error_page 411 = @my_411_error;
541 #location @my_411_error {
551 #location @my_411_error {
542 # chunkin_resume;
552 # chunkin_resume;
543 #}
553 #}
544
554
545 # uncomment if you want to serve static files by nginx
555 # uncomment if you want to serve static files by nginx
546 #root /path/to/installation/rhodecode/public;
556 #root /path/to/installation/rhodecode/public;
547
557
548 location / {
558 location / {
549 try_files $uri @rhode;
559 try_files $uri @rhode;
550 }
560 }
551
561
552 location @rhode {
562 location @rhode {
553 proxy_pass http://rc;
563 proxy_pass http://rc;
554 include /etc/nginx/proxy.conf;
564 include /etc/nginx/proxy.conf;
555 }
565 }
556
566
557 }
567 }
558
568
559 Here's the proxy.conf. It's tuned so it will not timeout on long
569 Here's the proxy.conf. It's tuned so it will not timeout on long
560 pushes or large pushes::
570 pushes or large pushes::
561
571
562 proxy_redirect off;
572 proxy_redirect off;
563 proxy_set_header Host $host;
573 proxy_set_header Host $host;
564 proxy_set_header X-Url-Scheme $scheme;
574 proxy_set_header X-Url-Scheme $scheme;
@@ -573,7 +583,7 b' pushes or large pushes::'
573 proxy_send_timeout 7200;
583 proxy_send_timeout 7200;
574 proxy_read_timeout 7200;
584 proxy_read_timeout 7200;
575 proxy_buffers 8 32k;
585 proxy_buffers 8 32k;
576
586
577 Also, when using root path with nginx you might set the static files to false
587 Also, when using root path with nginx you might set the static files to false
578 in the production.ini file::
588 in the production.ini file::
579
589
@@ -595,24 +605,24 b' Here is a sample configuration file for '
595 <VirtualHost *:80>
605 <VirtualHost *:80>
596 ServerName hg.myserver.com
606 ServerName hg.myserver.com
597 ServerAlias hg.myserver.com
607 ServerAlias hg.myserver.com
598
608
599 <Proxy *>
609 <Proxy *>
600 Order allow,deny
610 Order allow,deny
601 Allow from all
611 Allow from all
602 </Proxy>
612 </Proxy>
603
613
604 #important !
614 #important !
605 #Directive to properly generate url (clone url) for pylons
615 #Directive to properly generate url (clone url) for pylons
606 ProxyPreserveHost On
616 ProxyPreserveHost On
607
617
608 #rhodecode instance
618 #rhodecode instance
609 ProxyPass / http://127.0.0.1:5000/
619 ProxyPass / http://127.0.0.1:5000/
610 ProxyPassReverse / http://127.0.0.1:5000/
620 ProxyPassReverse / http://127.0.0.1:5000/
611
621
612 #to enable https use line below
622 #to enable https use line below
613 #SetEnvIf X-Url-Scheme https HTTPS=1
623 #SetEnvIf X-Url-Scheme https HTTPS=1
614
624
615 </VirtualHost>
625 </VirtualHost>
616
626
617
627
618 Additional tutorial
628 Additional tutorial
@@ -628,7 +638,7 b' Apache subdirectory part::'
628 ProxyPass http://127.0.0.1:5000/<someprefix>
638 ProxyPass http://127.0.0.1:5000/<someprefix>
629 ProxyPassReverse http://127.0.0.1:5000/<someprefix>
639 ProxyPassReverse http://127.0.0.1:5000/<someprefix>
630 SetEnvIf X-Url-Scheme https HTTPS=1
640 SetEnvIf X-Url-Scheme https HTTPS=1
631 </Location>
641 </Location>
632
642
633 Besides the regular apache setup you will need to add the following line
643 Besides the regular apache setup you will need to add the following line
634 into [app:main] section of your .ini file::
644 into [app:main] section of your .ini file::
@@ -639,7 +649,7 b' Add the following at the end of the .ini'
639
649
640 [filter:proxy-prefix]
650 [filter:proxy-prefix]
641 use = egg:PasteDeploy#prefix
651 use = egg:PasteDeploy#prefix
642 prefix = /<someprefix>
652 prefix = /<someprefix>
643
653
644
654
645 then change <someprefix> into your choosen prefix
655 then change <someprefix> into your choosen prefix
@@ -675,12 +685,12 b' Here is a sample excerpt from an Apache '
675 WSGIPassAuthorization On
685 WSGIPassAuthorization On
676
686
677 .. note::
687 .. note::
678 when running apache as root please add: `user=www-data group=www-data`
688 when running apache as root please add: `user=www-data group=www-data`
679 into above configuration
689 into above configuration
680
690
681 .. note::
691 .. note::
682 RhodeCode cannot be runned in multiprocess mode in apache, make sure
692 Running RhodeCode in multiprocess mode in apache is not supported,
683 you don't specify `processes=num` directive in the config
693 make sure you don't specify `processes=num` directive in the config
684
694
685
695
686 Example wsgi dispatch script::
696 Example wsgi dispatch script::
@@ -688,13 +698,13 b' Example wsgi dispatch script::'
688 import os
698 import os
689 os.environ["HGENCODING"] = "UTF-8"
699 os.environ["HGENCODING"] = "UTF-8"
690 os.environ['PYTHON_EGG_CACHE'] = '/home/web/rhodecode/.egg-cache'
700 os.environ['PYTHON_EGG_CACHE'] = '/home/web/rhodecode/.egg-cache'
691
701
692 # sometimes it's needed to set the curent dir
702 # sometimes it's needed to set the curent dir
693 os.chdir('/home/web/rhodecode/')
703 os.chdir('/home/web/rhodecode/')
694
704
695 import site
705 import site
696 site.addsitedir("/home/web/rhodecode/pyenv/lib/python2.6/site-packages")
706 site.addsitedir("/home/web/rhodecode/pyenv/lib/python2.6/site-packages")
697
707
698 from paste.deploy import loadapp
708 from paste.deploy import loadapp
699 from paste.script.util.logging_config import fileConfig
709 from paste.script.util.logging_config import fileConfig
700
710
@@ -722,4 +732,4 b' Some example init.d scripts can be found'
722 .. _mercurial-server: http://www.lshift.net/mercurial-server.html
732 .. _mercurial-server: http://www.lshift.net/mercurial-server.html
723 .. _PublishingRepositories: http://mercurial.selenic.com/wiki/PublishingRepositories
733 .. _PublishingRepositories: http://mercurial.selenic.com/wiki/PublishingRepositories
724 .. _Issues tracker: https://bitbucket.org/marcinkuzminski/rhodecode/issues
734 .. _Issues tracker: https://bitbucket.org/marcinkuzminski/rhodecode/issues
725 .. _google group rhodecode: http://groups.google.com/group/rhodecode No newline at end of file
735 .. _google group rhodecode: http://groups.google.com/group/rhodecode
@@ -8,12 +8,12 b' Upgrading from PyPI (aka "Cheeseshop")'
8 ---------------------------------------
8 ---------------------------------------
9
9
10 .. note::
10 .. note::
11 Firstly, it is recommended that you **always** perform a database and
11 Firstly, it is recommended that you **always** perform a database and
12 configuration backup before doing an upgrade.
12 configuration backup before doing an upgrade.
13
13
14 (These directions will use '{version}' to note that this is the version of
14 (These directions will use '{version}' to note that this is the version of
15 Rhodecode that these files were used with. If backing up your RhodeCode
15 Rhodecode that these files were used with. If backing up your RhodeCode
16 instance from version 1.3.6 to 1.4.0, the ``production.ini`` file would be
16 instance from version 1.3.6 to 1.4.0, the ``production.ini`` file would be
17 backed up to ``production.ini.1-3-6``.)
17 backed up to ``production.ini.1-3-6``.)
18
18
19
19
@@ -34,7 +34,7 b' installed Rhodecode in::'
34
34
35 pip freeze
35 pip freeze
36
36
37 will list all packages installed in the current environment. If Rhodecode
37 will list all packages installed in the current environment. If Rhodecode
38 isn't listed, change virtual environments to your venv location::
38 isn't listed, change virtual environments to your venv location::
39
39
40 source /opt/rhodecode-venv/bin/activate
40 source /opt/rhodecode-venv/bin/activate
@@ -50,11 +50,11 b' Or::'
50
50
51
51
52 Then run the following command from the installation directory::
52 Then run the following command from the installation directory::
53
53
54 paster make-config RhodeCode production.ini
54 paster make-config RhodeCode production.ini
55
55
56 This will display any changes made by the new version of RhodeCode to your
56 This will display any changes made by the new version of RhodeCode to your
57 current configuration. It will try to perform an automerge. It's recommended
57 current configuration. It will try to perform an automerge. It's recommended
58 that you re-check the content after the automerge.
58 that you re-check the content after the automerge.
59
59
60 .. note::
60 .. note::
@@ -62,7 +62,7 b' that you re-check the content after the '
62 caused by missing params added in new versions.
62 caused by missing params added in new versions.
63
63
64
64
65 It is also recommended that you rebuild the whoosh index after upgrading since
65 It is also recommended that you rebuild the whoosh index after upgrading since
66 the new whoosh version could introduce some incompatible index changes. Please
66 the new whoosh version could introduce some incompatible index changes. Please
67 Read the changelog to see if there were any changes to whoosh.
67 Read the changelog to see if there were any changes to whoosh.
68
68
@@ -70,12 +70,20 b' Read the changelog to see if there were '
70 The final step is to upgrade the database. To do this simply run::
70 The final step is to upgrade the database. To do this simply run::
71
71
72 paster upgrade-db production.ini
72 paster upgrade-db production.ini
73
73
74 This will upgrade the schema and update some of the defaults in the database,
74 This will upgrade the schema and update some of the defaults in the database,
75 and will always recheck the settings of the application, if there are no new
75 and will always recheck the settings of the application, if there are no new
76 options that need to be set.
76 options that need to be set.
77
77
78 You may find it helpful to clear out your log file so that new errors are
78
79 .. note::
80 DB schema upgrade library has some limitations and can sometimes fail if you try to
81 upgrade from older major releases. In such case simply run upgrades sequentially, eg.
82 upgrading from 1.2.X to 1.5.X should be done like that: 1.2.X. > 1.3.X > 1.4.X > 1.5.X
83 You can always specify what version of RhodeCode you want to install for example in pip
84 `pip install RhodeCode==1.3.6`
85
86 You may find it helpful to clear out your log file so that new errors are
79 readily apparent::
87 readily apparent::
80
88
81 echo > rhodecode.log
89 echo > rhodecode.log
@@ -92,7 +100,7 b' Or::'
92 If you're using Celery, make sure you restart all instances of it after
100 If you're using Celery, make sure you restart all instances of it after
93 upgrade.
101 upgrade.
94
102
95 .. _virtualenv: http://pypi.python.org/pypi/virtualenv
103 .. _virtualenv: http://pypi.python.org/pypi/virtualenv
96 .. _python: http://www.python.org/
104 .. _python: http://www.python.org/
97 .. _mercurial: http://mercurial.selenic.com/
105 .. _mercurial: http://mercurial.selenic.com/
98 .. _celery: http://celeryproject.org/
106 .. _celery: http://celeryproject.org/
@@ -11,9 +11,17 b' Repository deleting'
11 Currently when admin/owner deletes a repository, RhodeCode does not physically
11 Currently when admin/owner deletes a repository, RhodeCode does not physically
12 delete a repository from filesystem, it renames it in a special way so it's
12 delete a repository from filesystem, it renames it in a special way so it's
13 not possible to push,clone or access repository. It's worth a notice that,
13 not possible to push,clone or access repository. It's worth a notice that,
14 even if someone will be given administrative access to RhodeCode and will
14 even if someone will be given administrative access to RhodeCode and will
15 delete a repository You can easy restore such action by restoring `rm__<date>`
15 delete a repository You can easy restore such action by restoring `rm__<date>`
16 from the repository name, and internal repository storage (.hg/.git)
16 from the repository name, and internal repository storage (.hg/.git). There
17 is also a special command for cleaning such archived repos::
18
19 paster cleanup-repos --older-than=30d production.ini
20
21 This command will scan for archived repositories that are older than 30d,
22 display them and ask if you want to delete them (there's a --dont-ask flag also)
23 If you host big amount of repositories with forks that are constantly deleted
24 it's recommended that you run such command via crontab.
17
25
18 Follow current branch in file view
26 Follow current branch in file view
19 ----------------------------------
27 ----------------------------------
@@ -31,7 +39,7 b' Checkboxes in compare view allow users t'
31 only show the range between the first and last checkbox (no cherry pick).
39 only show the range between the first and last checkbox (no cherry pick).
32 Clicking more than one checkbox will activate a link in top saying
40 Clicking more than one checkbox will activate a link in top saying
33 `Show selected changes <from-rev> -> <to-rev>` clicking this will bring
41 `Show selected changes <from-rev> -> <to-rev>` clicking this will bring
34 compare view
42 compare view. In this view also it's possible to switch to combined compare.
35
43
36 Compare view is also available from the journal on pushes having more than
44 Compare view is also available from the journal on pushes having more than
37 one changeset
45 one changeset
@@ -44,21 +52,21 b' Due to complicated nature of repository '
44 can change.
52 can change.
45
53
46 example::
54 example::
47
55
48 #before
56 #before
49 http://server.com/repo_name
57 http://server.com/repo_name
50 # after insertion to test_group group the url will be
58 # after insertion to test_group group the url will be
51 http://server.com/test_group/repo_name
59 http://server.com/test_group/repo_name
52
60
53 This can be an issue for build systems and any other hardcoded scripts, moving
61 This can be an issue for build systems and any other hardcoded scripts, moving
54 repository to a group leads to a need for changing external systems. To
62 repository to a group leads to a need for changing external systems. To
55 overcome this RhodeCode introduces a non changable replacement url. It's
63 overcome this RhodeCode introduces a non changable replacement url. It's
56 simply an repository ID prefixed with `_` above urls are also accessible as::
64 simply an repository ID prefixed with `_` above urls are also accessible as::
57
65
58 http://server.com/_<ID>
66 http://server.com/_<ID>
59
67
60 Since ID are always the same moving the repository will not affect such url.
68 Since ID are always the same moving the repository will not affect such url.
61 the _<ID> syntax can be used anywhere in the system so urls with repo_name
69 the _<ID> syntax can be used anywhere in the system so urls with repo_name
62 for changelogs, files and other can be exchanged with _<ID> syntax.
70 for changelogs, files and other can be exchanged with _<ID> syntax.
63
71
64
72
@@ -71,7 +79,7 b' on errors the mails will have a detailed'
71
79
72
80
73 Mails are also sent for code comments. If someone comments on a changeset
81 Mails are also sent for code comments. If someone comments on a changeset
74 mail is sent to all participants, the person who commited the changeset
82 mail is sent to all participants, the person who commited the changeset
75 (if present in RhodeCode), and to all people mentioned with @mention system.
83 (if present in RhodeCode), and to all people mentioned with @mention system.
76
84
77
85
@@ -96,12 +104,12 b' Currently it support following options:'
96
104
97
105
98 .. note::
106 .. note::
99
107
100 - *`svn -> hg` cloning requires `hgsubversion` library to be installed.*
108 * `svn -> hg` cloning requires `hgsubversion` library to be installed.*
101
109
102 If you need to clone repositories that are protected via basic auth, you
110 If you need to clone repositories that are protected via basic auth, you
103 might pass the url with stored credentials inside eg.
111 might pass the url with stored credentials inside eg.
104 `http://user:passw@remote.server/repo, RhodeCode will try to login and clone
112 `http://user:passw@remote.server/repo`, RhodeCode will try to login and clone
105 using given credentials. Please take a note that they will be stored as
113 using given credentials. Please take a note that they will be stored as
106 plaintext inside the database. RhodeCode will remove auth info when showing the
114 plaintext inside the database. RhodeCode will remove auth info when showing the
107 clone url in summary page.
115 clone url in summary page.
@@ -7,23 +7,23 b' Troubleshooting'
7
7
8 :Q: **Missing static files?**
8 :Q: **Missing static files?**
9 :A: Make sure either to set the `static_files = true` in the .ini file or
9 :A: Make sure either to set the `static_files = true` in the .ini file or
10 double check the root path for your http setup. It should point to
10 double check the root path for your http setup. It should point to
11 for example:
11 for example:
12 /home/my-virtual-python/lib/python2.6/site-packages/rhodecode/public
12 /home/my-virtual-python/lib/python2.6/site-packages/rhodecode/public
13
13
14 |
14 |
15
15
16 :Q: **Can't install celery/rabbitmq?**
16 :Q: **Can't install celery/rabbitmq?**
17 :A: Don't worry RhodeCode works without them too. No extra setup is required.
17 :A: Don't worry RhodeCode works without them too. No extra setup is required.
18 Try out great celery docs for further help.
18 Try out great celery docs for further help.
19
19
20 |
20 |
21
21
22 :Q: **Long lasting push timeouts?**
22 :Q: **Long lasting push timeouts?**
23 :A: Make sure you set a longer timeouts in your proxy/fcgi settings, timeouts
23 :A: Make sure you set a longer timeouts in your proxy/fcgi settings, timeouts
24 are caused by https server and not RhodeCode.
24 are caused by https server and not RhodeCode.
25
25
26 |
26 |
27
27
28 :Q: **Large pushes timeouts?**
28 :Q: **Large pushes timeouts?**
29 :A: Make sure you set a proper max_body_size for the http server. Very often
29 :A: Make sure you set a proper max_body_size for the http server. Very often
@@ -46,7 +46,7 b' Troubleshooting'
46 :Q: **How i use hooks in RhodeCode?**
46 :Q: **How i use hooks in RhodeCode?**
47 :A: It's easy if they are python hooks just use advanced link in hooks section
47 :A: It's easy if they are python hooks just use advanced link in hooks section
48 in Admin panel, that works only for Mercurial. If you want to use githooks,
48 in Admin panel, that works only for Mercurial. If you want to use githooks,
49 just install proper one in repository eg. create file in
49 just install proper one in repository eg. create file in
50 `/gitrepo/hooks/pre-receive`. You can also use RhodeCode-extensions to
50 `/gitrepo/hooks/pre-receive`. You can also use RhodeCode-extensions to
51 connect to callback hooks, for both Git and Mercurial.
51 connect to callback hooks, for both Git and Mercurial.
52
52
@@ -55,7 +55,19 b' Troubleshooting'
55 :Q: **RhodeCode is slow for me, how can i make it faster?**
55 :Q: **RhodeCode is slow for me, how can i make it faster?**
56 :A: See the :ref:`performance` section
56 :A: See the :ref:`performance` section
57
57
58 For further questions search the `Issues tracker`_, or post a message in the
58 |
59
60 :Q: **UnicodeDecodeError on Apache mod_wsgi**
61 :A: Please read: https://docs.djangoproject.com/en/dev/howto/deployment/wsgi/modwsgi/#if-you-get-a-unicodeencodeerror
62
63 |
64
65 :Q: **Requests hanging on Windows**
66 :A: Please try out with disabled Antivirus software, there are some known problems with Eset Anitivirus. Make sure
67 you have installed latest windows patches (especially KB2789397)
68
69
70 For further questions search the `Issues tracker`_, or post a message in the
59 `google group rhodecode`_
71 `google group rhodecode`_
60
72
61 .. _virtualenv: http://pypi.python.org/pypi/virtualenv
73 .. _virtualenv: http://pypi.python.org/pypi/virtualenv
@@ -67,4 +79,4 b' For further questions search the `Issues'
67 .. _mercurial-server: http://www.lshift.net/mercurial-server.html
79 .. _mercurial-server: http://www.lshift.net/mercurial-server.html
68 .. _PublishingRepositories: http://mercurial.selenic.com/wiki/PublishingRepositories
80 .. _PublishingRepositories: http://mercurial.selenic.com/wiki/PublishingRepositories
69 .. _Issues tracker: https://bitbucket.org/marcinkuzminski/rhodecode/issues
81 .. _Issues tracker: https://bitbucket.org/marcinkuzminski/rhodecode/issues
70 .. _google group rhodecode: http://groups.google.com/group/rhodecode No newline at end of file
82 .. _google group rhodecode: http://groups.google.com/group/rhodecode
General Comments 0
You need to be logged in to leave comments. Login now