Show More
@@ -172,7 +172,7 b' database:' | |||||
172 | - convert the database in a one-time step |
|
172 | - convert the database in a one-time step | |
173 |
|
173 | |||
174 | Maintaining interoperability |
|
174 | Maintaining interoperability | |
175 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|
175 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
176 |
|
176 | |||
177 | Interoperability with RhodeCode 2.2.X installations is provided so you don't |
|
177 | Interoperability with RhodeCode 2.2.X installations is provided so you don't | |
178 | have to immediately commit to switching to Kallithea. This option will most |
|
178 | have to immediately commit to switching to Kallithea. This option will most | |
@@ -191,7 +191,7 b' then you will find this location at' | |||||
191 | ``$VIRTUAL_ENV/lib/python2.7/site-packages/Kallithea-0.1-py2.7.egg/kallithea``. |
|
191 | ``$VIRTUAL_ENV/lib/python2.7/site-packages/Kallithea-0.1-py2.7.egg/kallithea``. | |
192 |
|
192 | |||
193 | One-time conversion |
|
193 | One-time conversion | |
194 | ~~~~~~~~~~~~~~~~~~~ |
|
194 | ^^^^^^^^^^^^^^^^^^^ | |
195 |
|
195 | |||
196 | Alternatively, if you would like to convert the database for good, you can use |
|
196 | Alternatively, if you would like to convert the database for good, you can use | |
197 | a helper script provided by Kallithea. This script will operate directly on the |
|
197 | a helper script provided by Kallithea. This script will operate directly on the | |
@@ -209,7 +209,7 b' database, using the database string you ' | |||||
209 | above, watch out for stray brand.pyc after removing brand.py. |
|
209 | above, watch out for stray brand.pyc after removing brand.py. | |
210 |
|
210 | |||
211 | Git hooks |
|
211 | Git hooks | |
212 | ~~~~~~~~~ |
|
212 | ^^^^^^^^^ | |
213 |
|
213 | |||
214 | After switching to Kallithea, it will be necessary to update the Git_ hooks in |
|
214 | After switching to Kallithea, it will be necessary to update the Git_ hooks in | |
215 | your repositories. If not, the Git_ hooks from RhodeCode will still be called, |
|
215 | your repositories. If not, the Git_ hooks from RhodeCode will still be called, |
@@ -10,7 +10,7 b' methods. Everything is available by send' | |||||
10 |
|
10 | |||
11 |
|
11 | |||
12 | API access for web views |
|
12 | API access for web views | |
13 | ++++++++++++++++++++++++ |
|
13 | ------------------------ | |
14 |
|
14 | |||
15 | API access can also be turned on for each web view in Kallithea that is |
|
15 | API access can also be turned on for each web view in Kallithea that is | |
16 | decorated with the ``@LoginRequired`` decorator. Some views use |
|
16 | decorated with the ``@LoginRequired`` decorator. Some views use | |
@@ -36,7 +36,7 b' third-party services like code review, o' | |||||
36 |
|
36 | |||
37 |
|
37 | |||
38 | API access |
|
38 | API access | |
39 | ++++++++++ |
|
39 | ---------- | |
40 |
|
40 | |||
41 | Clients must send JSON encoded JSON-RPC requests:: |
|
41 | Clients must send JSON encoded JSON-RPC requests:: | |
42 |
|
42 | |||
@@ -76,7 +76,7 b' the reponse will have a failure descript' | |||||
76 |
|
76 | |||
77 |
|
77 | |||
78 | API client |
|
78 | API client | |
79 | ++++++++++ |
|
79 | ---------- | |
80 |
|
80 | |||
81 | Kallithea comes with a ``kallithea-api`` command line tool, providing a convenient |
|
81 | Kallithea comes with a ``kallithea-api`` command line tool, providing a convenient | |
82 | way to call the JSON-RPC API. |
|
82 | way to call the JSON-RPC API. | |
@@ -110,11 +110,11 b" so you don't have to specify them every " | |||||
110 |
|
110 | |||
111 |
|
111 | |||
112 | API methods |
|
112 | API methods | |
113 | +++++++++++ |
|
113 | ----------- | |
114 |
|
114 | |||
115 |
|
115 | |||
116 | pull |
|
116 | pull | |
117 | ---- |
|
117 | ^^^^ | |
118 |
|
118 | |||
119 | Pull the given repo from remote location. Can be used to automatically keep |
|
119 | Pull the given repo from remote location. Can be used to automatically keep | |
120 | remote repos up to date. |
|
120 | remote repos up to date. | |
@@ -136,7 +136,7 b' OUTPUT::' | |||||
136 | error : null |
|
136 | error : null | |
137 |
|
137 | |||
138 | rescan_repos |
|
138 | rescan_repos | |
139 | ------------ |
|
139 | ^^^^^^^^^^^^ | |
140 |
|
140 | |||
141 | Rescan repositories. If ``remove_obsolete`` is set, |
|
141 | Rescan repositories. If ``remove_obsolete`` is set, | |
142 | Kallithea will delete repos that are in the database but not in the filesystem. |
|
142 | Kallithea will delete repos that are in the database but not in the filesystem. | |
@@ -159,7 +159,7 b' OUTPUT::' | |||||
159 | error : null |
|
159 | error : null | |
160 |
|
160 | |||
161 | invalidate_cache |
|
161 | invalidate_cache | |
162 | ---------------- |
|
162 | ^^^^^^^^^^^^^^^^ | |
163 |
|
163 | |||
164 | Invalidate the cache for a repository. |
|
164 | Invalidate the cache for a repository. | |
165 | This command can only be executed using the api_key of a user with admin rights, |
|
165 | This command can only be executed using the api_key of a user with admin rights, | |
@@ -181,7 +181,7 b' OUTPUT::' | |||||
181 | error : null |
|
181 | error : null | |
182 |
|
182 | |||
183 | lock |
|
183 | lock | |
184 | ---- |
|
184 | ^^^^ | |
185 |
|
185 | |||
186 | Set the locking state on the given repository by the given user. |
|
186 | Set the locking state on the given repository by the given user. | |
187 | If the param ``userid`` is skipped, it is set to the ID of the user who is calling this method. |
|
187 | If the param ``userid`` is skipped, it is set to the ID of the user who is calling this method. | |
@@ -212,7 +212,7 b' OUTPUT::' | |||||
212 | error : null |
|
212 | error : null | |
213 |
|
213 | |||
214 | get_ip |
|
214 | get_ip | |
215 | ------ |
|
215 | ^^^^^^ | |
216 |
|
216 | |||
217 | Return IP address as seen from Kallithea server, together with all |
|
217 | Return IP address as seen from Kallithea server, together with all | |
218 | defined IP addresses for given user. |
|
218 | defined IP addresses for given user. | |
@@ -244,7 +244,7 b' OUTPUT::' | |||||
244 | error : null |
|
244 | error : null | |
245 |
|
245 | |||
246 | get_user |
|
246 | get_user | |
247 | -------- |
|
247 | ^^^^^^^^ | |
248 |
|
248 | |||
249 | Get a user by username or userid. The result is empty if user can't be found. |
|
249 | Get a user by username or userid. The result is empty if user can't be found. | |
250 | If userid param is skipped, it is set to id of user who is calling this method. |
|
250 | If userid param is skipped, it is set to id of user who is calling this method. | |
@@ -288,7 +288,7 b' OUTPUT::' | |||||
288 | error: null |
|
288 | error: null | |
289 |
|
289 | |||
290 | get_users |
|
290 | get_users | |
291 | --------- |
|
291 | ^^^^^^^^^ | |
292 |
|
292 | |||
293 | List all existing users. |
|
293 | List all existing users. | |
294 | This command can only be executed using the api_key of a user with admin rights. |
|
294 | This command can only be executed using the api_key of a user with admin rights. | |
@@ -325,7 +325,7 b' OUTPUT::' | |||||
325 | .. _create-user: |
|
325 | .. _create-user: | |
326 |
|
326 | |||
327 | create_user |
|
327 | create_user | |
328 | ----------- |
|
328 | ^^^^^^^^^^^ | |
329 |
|
329 | |||
330 | Create new user. |
|
330 | Create new user. | |
331 | This command can only be executed using the api_key of a user with admin rights. |
|
331 | This command can only be executed using the api_key of a user with admin rights. | |
@@ -371,7 +371,7 b' Example::' | |||||
371 | kallithea-api create_user username:bent email:bent@example.com firstname:Bent lastname:Bentsen extern_type:ldap extern_name:uid=bent,dc=example,dc=com |
|
371 | kallithea-api create_user username:bent email:bent@example.com firstname:Bent lastname:Bentsen extern_type:ldap extern_name:uid=bent,dc=example,dc=com | |
372 |
|
372 | |||
373 | update_user |
|
373 | update_user | |
374 | ----------- |
|
374 | ^^^^^^^^^^^ | |
375 |
|
375 | |||
376 | Update the given user if such user exists. |
|
376 | Update the given user if such user exists. | |
377 | This command can only be executed using the api_key of a user with admin rights. |
|
377 | This command can only be executed using the api_key of a user with admin rights. | |
@@ -415,7 +415,7 b' OUTPUT::' | |||||
415 | error: null |
|
415 | error: null | |
416 |
|
416 | |||
417 | delete_user |
|
417 | delete_user | |
418 | ----------- |
|
418 | ^^^^^^^^^^^ | |
419 |
|
419 | |||
420 | Delete the given user if such a user exists. |
|
420 | Delete the given user if such a user exists. | |
421 | This command can only be executed using the api_key of a user with admin rights. |
|
421 | This command can only be executed using the api_key of a user with admin rights. | |
@@ -439,7 +439,7 b' OUTPUT::' | |||||
439 | error: null |
|
439 | error: null | |
440 |
|
440 | |||
441 | get_user_group |
|
441 | get_user_group | |
442 | -------------- |
|
442 | ^^^^^^^^^^^^^^ | |
443 |
|
443 | |||
444 | Get an existing user group. |
|
444 | Get an existing user group. | |
445 | This command can only be executed using the api_key of a user with admin rights. |
|
445 | This command can only be executed using the api_key of a user with admin rights. | |
@@ -481,7 +481,7 b' OUTPUT::' | |||||
481 | error : null |
|
481 | error : null | |
482 |
|
482 | |||
483 | get_user_groups |
|
483 | get_user_groups | |
484 | --------------- |
|
484 | ^^^^^^^^^^^^^^^ | |
485 |
|
485 | |||
486 | List all existing user groups. |
|
486 | List all existing user groups. | |
487 | This command can only be executed using the api_key of a user with admin rights. |
|
487 | This command can only be executed using the api_key of a user with admin rights. | |
@@ -507,7 +507,7 b' OUTPUT::' | |||||
507 | error : null |
|
507 | error : null | |
508 |
|
508 | |||
509 | create_user_group |
|
509 | create_user_group | |
510 | ----------------- |
|
510 | ^^^^^^^^^^^^^^^^^ | |
511 |
|
511 | |||
512 | Create a new user group. |
|
512 | Create a new user group. | |
513 | This command can only be executed using the api_key of a user with admin rights. |
|
513 | This command can only be executed using the api_key of a user with admin rights. | |
@@ -537,7 +537,7 b' OUTPUT::' | |||||
537 | error: null |
|
537 | error: null | |
538 |
|
538 | |||
539 | add_user_to_user_group |
|
539 | add_user_to_user_group | |
540 | ---------------------- |
|
540 | ^^^^^^^^^^^^^^^^^^^^^^ | |
541 |
|
541 | |||
542 | Adds a user to a user group. If the user already is in that group, success will be |
|
542 | Adds a user to a user group. If the user already is in that group, success will be | |
543 | ``false``. |
|
543 | ``false``. | |
@@ -564,7 +564,7 b' OUTPUT::' | |||||
564 | error: null |
|
564 | error: null | |
565 |
|
565 | |||
566 | remove_user_from_user_group |
|
566 | remove_user_from_user_group | |
567 | --------------------------- |
|
567 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
568 |
|
568 | |||
569 | Remove a user from a user group. If the user isn't in the given group, success will |
|
569 | Remove a user from a user group. If the user isn't in the given group, success will | |
570 | be ``false``. |
|
570 | be ``false``. | |
@@ -591,7 +591,7 b' OUTPUT::' | |||||
591 | error: null |
|
591 | error: null | |
592 |
|
592 | |||
593 | get_repo |
|
593 | get_repo | |
594 | -------- |
|
594 | ^^^^^^^^ | |
595 |
|
595 | |||
596 | Get an existing repository by its name or repository_id. Members will contain |
|
596 | Get an existing repository by its name or repository_id. Members will contain | |
597 | either users_group or users associated to that repository. |
|
597 | either users_group or users associated to that repository. | |
@@ -680,7 +680,7 b' OUTPUT::' | |||||
680 | error: null |
|
680 | error: null | |
681 |
|
681 | |||
682 | get_repos |
|
682 | get_repos | |
683 | --------- |
|
683 | ^^^^^^^^^ | |
684 |
|
684 | |||
685 | List all existing repositories. |
|
685 | List all existing repositories. | |
686 | This command can only be executed using the api_key of a user with admin rights, |
|
686 | This command can only be executed using the api_key of a user with admin rights, | |
@@ -717,7 +717,7 b' OUTPUT::' | |||||
717 | error: null |
|
717 | error: null | |
718 |
|
718 | |||
719 | get_repo_nodes |
|
719 | get_repo_nodes | |
720 | -------------- |
|
720 | ^^^^^^^^^^^^^^ | |
721 |
|
721 | |||
722 | Return a list of files and directories for a given path at the given revision. |
|
722 | Return a list of files and directories for a given path at the given revision. | |
723 | It is possible to specify ret_type to show only ``files`` or ``dirs``. |
|
723 | It is possible to specify ret_type to show only ``files`` or ``dirs``. | |
@@ -748,7 +748,7 b' OUTPUT::' | |||||
748 | error: null |
|
748 | error: null | |
749 |
|
749 | |||
750 | create_repo |
|
750 | create_repo | |
751 | ----------- |
|
751 | ^^^^^^^^^^^ | |
752 |
|
752 | |||
753 | Create a repository. If the repository name contains "/", all needed repository |
|
753 | Create a repository. If the repository name contains "/", all needed repository | |
754 | groups will be created. For example "foo/bar/baz" will create repository groups |
|
754 | groups will be created. For example "foo/bar/baz" will create repository groups | |
@@ -800,7 +800,7 b' OUTPUT::' | |||||
800 | error: null |
|
800 | error: null | |
801 |
|
801 | |||
802 | update_repo |
|
802 | update_repo | |
803 | ----------- |
|
803 | ^^^^^^^^^^^ | |
804 |
|
804 | |||
805 | Update a repository. |
|
805 | Update a repository. | |
806 | This command can only be executed using the api_key of a user with admin rights, |
|
806 | This command can only be executed using the api_key of a user with admin rights, | |
@@ -860,7 +860,7 b' OUTPUT::' | |||||
860 | error: null |
|
860 | error: null | |
861 |
|
861 | |||
862 | fork_repo |
|
862 | fork_repo | |
863 | --------- |
|
863 | ^^^^^^^^^ | |
864 |
|
864 | |||
865 | Create a fork of the given repo. If using Celery, this will |
|
865 | Create a fork of the given repo. If using Celery, this will | |
866 | return success message immediately and a fork will be created |
|
866 | return success message immediately and a fork will be created | |
@@ -896,7 +896,7 b' OUTPUT::' | |||||
896 | error: null |
|
896 | error: null | |
897 |
|
897 | |||
898 | delete_repo |
|
898 | delete_repo | |
899 | ----------- |
|
899 | ^^^^^^^^^^^ | |
900 |
|
900 | |||
901 | Delete a repository. |
|
901 | Delete a repository. | |
902 | This command can only be executed using the api_key of a user with admin rights, |
|
902 | This command can only be executed using the api_key of a user with admin rights, | |
@@ -923,7 +923,7 b' OUTPUT::' | |||||
923 | error: null |
|
923 | error: null | |
924 |
|
924 | |||
925 | grant_user_permission |
|
925 | grant_user_permission | |
926 | --------------------- |
|
926 | ^^^^^^^^^^^^^^^^^^^^^ | |
927 |
|
927 | |||
928 | Grant permission for a user on the given repository, or update the existing one if found. |
|
928 | Grant permission for a user on the given repository, or update the existing one if found. | |
929 | This command can only be executed using the api_key of a user with admin rights. |
|
929 | This command can only be executed using the api_key of a user with admin rights. | |
@@ -949,7 +949,7 b' OUTPUT::' | |||||
949 | error: null |
|
949 | error: null | |
950 |
|
950 | |||
951 | revoke_user_permission |
|
951 | revoke_user_permission | |
952 | ---------------------- |
|
952 | ^^^^^^^^^^^^^^^^^^^^^^ | |
953 |
|
953 | |||
954 | Revoke permission for a user on the given repository. |
|
954 | Revoke permission for a user on the given repository. | |
955 | This command can only be executed using the api_key of a user with admin rights. |
|
955 | This command can only be executed using the api_key of a user with admin rights. | |
@@ -974,7 +974,7 b' OUTPUT::' | |||||
974 | error: null |
|
974 | error: null | |
975 |
|
975 | |||
976 | grant_user_group_permission |
|
976 | grant_user_group_permission | |
977 | --------------------------- |
|
977 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
978 |
|
978 | |||
979 | Grant permission for a user group on the given repository, or update the |
|
979 | Grant permission for a user group on the given repository, or update the | |
980 | existing one if found. |
|
980 | existing one if found. | |
@@ -1001,7 +1001,7 b' OUTPUT::' | |||||
1001 | error: null |
|
1001 | error: null | |
1002 |
|
1002 | |||
1003 | revoke_user_group_permission |
|
1003 | revoke_user_group_permission | |
1004 | ---------------------------- |
|
1004 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
1005 |
|
1005 | |||
1006 | Revoke permission for a user group on the given repository. |
|
1006 | Revoke permission for a user group on the given repository. | |
1007 | This command can only be executed using the api_key of a user with admin rights. |
|
1007 | This command can only be executed using the api_key of a user with admin rights. |
@@ -63,7 +63,7 b' Kallithea Documentation' | |||||
63 |
|
63 | |||
64 |
|
64 | |||
65 | Other topics |
|
65 | Other topics | |
66 | ------------ |
|
66 | ************ | |
67 |
|
67 | |||
68 | * :ref:`genindex` |
|
68 | * :ref:`genindex` | |
69 | * :ref:`search` |
|
69 | * :ref:`search` |
@@ -28,7 +28,7 b' will be served from the root of its own ' | |||||
28 | own virtual folder will be noted where appropriate. |
|
28 | own virtual folder will be noted where appropriate. | |
29 |
|
29 | |||
30 | Application pool |
|
30 | Application pool | |
31 | ................ |
|
31 | ^^^^^^^^^^^^^^^^ | |
32 |
|
32 | |||
33 | Make sure that there is a unique application pool for the Kallithea application |
|
33 | Make sure that there is a unique application pool for the Kallithea application | |
34 | with an identity that has read access to the Kallithea distribution. |
|
34 | with an identity that has read access to the Kallithea distribution. | |
@@ -44,7 +44,7 b' to run on the website and neither will K' | |||||
44 | as long as the Kallithea requirements are met by the existing pool. |
|
44 | as long as the Kallithea requirements are met by the existing pool. | |
45 |
|
45 | |||
46 | ISAPI handler |
|
46 | ISAPI handler | |
47 | ............. |
|
47 | ^^^^^^^^^^^^^ | |
48 |
|
48 | |||
49 | The ISAPI handler can be generated using:: |
|
49 | The ISAPI handler can be generated using:: | |
50 |
|
50 | |||
@@ -68,7 +68,7 b' middleware WSGI handler that Kallithea r' | |||||
68 | site will be processed through this logic henceforth. |
|
68 | site will be processed through this logic henceforth. | |
69 |
|
69 | |||
70 | Authentication with Kallithea using IIS authentication modules |
|
70 | Authentication with Kallithea using IIS authentication modules | |
71 | .............................................................. |
|
71 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
72 |
|
72 | |||
73 | The recommended way to handle authentication with Kallithea using IIS is to let |
|
73 | The recommended way to handle authentication with Kallithea using IIS is to let | |
74 | IIS handle all the authentication and just pass it to Kallithea. |
|
74 | IIS handle all the authentication and just pass it to Kallithea. |
@@ -6,7 +6,7 b' Installation and upgrade on Windows (7/S' | |||||
6 |
|
6 | |||
7 |
|
7 | |||
8 | First time install |
|
8 | First time install | |
9 | :::::::::::::::::: |
|
9 | ------------------ | |
10 |
|
10 | |||
11 | Target OS: Windows 7 and newer or Windows Server 2008 R2 and newer |
|
11 | Target OS: Windows 7 and newer or Windows Server 2008 R2 and newer | |
12 |
|
12 | |||
@@ -15,7 +15,7 b' Tested on Windows 8.1, Windows Server 20' | |||||
15 | To install on an older version of Windows, see `<installation_win_old.html>`_ |
|
15 | To install on an older version of Windows, see `<installation_win_old.html>`_ | |
16 |
|
16 | |||
17 | Step 1 -- Install Python |
|
17 | Step 1 -- Install Python | |
18 | ------------------------ |
|
18 | ^^^^^^^^^^^^^^^^^^^^^^^^ | |
19 |
|
19 | |||
20 | Install Python 2.x.y (x = 6 or 7). Latest version is recommended. If you need another version, they can run side by side. |
|
20 | Install Python 2.x.y (x = 6 or 7). Latest version is recommended. If you need another version, they can run side by side. | |
21 |
|
21 | |||
@@ -31,7 +31,7 b' Remember the specific major and minor ve' | |||||
31 | be needed in the next step. In this case, it is "2.7". |
|
31 | be needed in the next step. In this case, it is "2.7". | |
32 |
|
32 | |||
33 | Step 2 -- Python BIN |
|
33 | Step 2 -- Python BIN | |
34 | -------------------- |
|
34 | ^^^^^^^^^^^^^^^^^^^^ | |
35 |
|
35 | |||
36 | Add Python BIN folder to the path. This can be done manually (editing |
|
36 | Add Python BIN folder to the path. This can be done manually (editing | |
37 | "PATH" environment variable) or by using Windows Support Tools that |
|
37 | "PATH" environment variable) or by using Windows Support Tools that | |
@@ -45,7 +45,7 b' Please substitute [your-python-path] wit' | |||||
45 | path. Typically this is ``C:\\Python27``. |
|
45 | path. Typically this is ``C:\\Python27``. | |
46 |
|
46 | |||
47 | Step 3 -- Install pywin32 extensions |
|
47 | Step 3 -- Install pywin32 extensions | |
48 | ------------------------------------ |
|
48 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
49 |
|
49 | |||
50 | Download pywin32 from: |
|
50 | Download pywin32 from: | |
51 | http://sourceforge.net/projects/pywin32/files/ |
|
51 | http://sourceforge.net/projects/pywin32/files/ | |
@@ -61,7 +61,7 b' http://sourceforge.net/projects/pywin32/' | |||||
61 | (Win32) |
|
61 | (Win32) | |
62 |
|
62 | |||
63 | Step 4 -- Install pip |
|
63 | Step 4 -- Install pip | |
64 | --------------------- |
|
64 | ^^^^^^^^^^^^^^^^^^^^^ | |
65 |
|
65 | |||
66 | pip is a package management system for Python. You will need it to install Kallithea and its dependencies. |
|
66 | pip is a package management system for Python. You will need it to install Kallithea and its dependencies. | |
67 |
|
67 | |||
@@ -85,7 +85,7 b' open a CMD and type::' | |||||
85 | SETX PATH "%PATH%;[your-python-path]\Scripts" /M |
|
85 | SETX PATH "%PATH%;[your-python-path]\Scripts" /M | |
86 |
|
86 | |||
87 | Step 5 -- Kallithea folder structure |
|
87 | Step 5 -- Kallithea folder structure | |
88 | ------------------------------------ |
|
88 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
89 |
|
89 | |||
90 | Create a Kallithea folder structure. |
|
90 | Create a Kallithea folder structure. | |
91 |
|
91 | |||
@@ -102,7 +102,7 b' Create the following folder structure::' | |||||
102 | C:\Kallithea\Repos |
|
102 | C:\Kallithea\Repos | |
103 |
|
103 | |||
104 | Step 6 -- Install virtualenv |
|
104 | Step 6 -- Install virtualenv | |
105 | ---------------------------- |
|
105 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
106 |
|
106 | |||
107 | .. note:: |
|
107 | .. note:: | |
108 | A python virtual environment will allow for isolation between the Python packages of your system and those used for Kallithea. |
|
108 | A python virtual environment will allow for isolation between the Python packages of your system and those used for Kallithea. | |
@@ -119,7 +119,7 b' To create a virtual environment, run::' | |||||
119 | virtualenv C:\Kallithea\Env |
|
119 | virtualenv C:\Kallithea\Env | |
120 |
|
120 | |||
121 | Step 7 -- Install Kallithea |
|
121 | Step 7 -- Install Kallithea | |
122 | --------------------------- |
|
122 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
123 |
|
123 | |||
124 | In order to install Kallithea, you need to be able to run "pip install kallithea". It will use pip to install the Kallithea Python package and its dependencies. |
|
124 | In order to install Kallithea, you need to be able to run "pip install kallithea". It will use pip to install the Kallithea Python package and its dependencies. | |
125 | Some Python packages use managed code and need to be compiled. |
|
125 | Some Python packages use managed code and need to be compiled. | |
@@ -146,7 +146,7 b' The prompt will change into "(Env) C:\\\\K' | |||||
146 | normal. |
|
146 | normal. | |
147 |
|
147 | |||
148 | Step 8 -- Install git (optional) |
|
148 | Step 8 -- Install git (optional) | |
149 | -------------------------------- |
|
149 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
150 |
|
150 | |||
151 | Mercurial being a python package, it was installed automatically when doing "pip install kallithea". |
|
151 | Mercurial being a python package, it was installed automatically when doing "pip install kallithea". | |
152 |
|
152 | |||
@@ -155,7 +155,7 b' You need to install git manually if you ' | |||||
155 | See http://git-scm.com/book/en/v2/Getting-Started-Installing-Git#Installing-on-Windows for instructions. |
|
155 | See http://git-scm.com/book/en/v2/Getting-Started-Installing-Git#Installing-on-Windows for instructions. | |
156 |
|
156 | |||
157 | Step 9 -- Configuring Kallithea |
|
157 | Step 9 -- Configuring Kallithea | |
158 | ------------------------------- |
|
158 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
159 |
|
159 | |||
160 | Steps taken from `<setup.html>`_ |
|
160 | Steps taken from `<setup.html>`_ | |
161 |
|
161 | |||
@@ -194,7 +194,7 b' If you make a mistake and the script doe' | |||||
194 | If you decided not to install git, you will get errors about it that you can ignore. |
|
194 | If you decided not to install git, you will get errors about it that you can ignore. | |
195 |
|
195 | |||
196 | Step 10 -- Running Kallithea |
|
196 | Step 10 -- Running Kallithea | |
197 | ---------------------------- |
|
197 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
198 |
|
198 | |||
199 | In the previous command prompt, being in the C:\\Kallithea\\Bin folder, type:: |
|
199 | In the previous command prompt, being in the C:\\Kallithea\\Bin folder, type:: | |
200 |
|
200 | |||
@@ -222,7 +222,7 b' What this guide does not cover:' | |||||
222 |
|
222 | |||
223 |
|
223 | |||
224 | Upgrading |
|
224 | Upgrading | |
225 | ::::::::: |
|
225 | --------- | |
226 |
|
226 | |||
227 | Stop running Kallithea |
|
227 | Stop running Kallithea | |
228 | Open a CommandPrompt like in Step 7 (cd to C:\Kallithea\Env\Scripts and activate) and type:: |
|
228 | Open a CommandPrompt like in Step 7 (cd to C:\Kallithea\Env\Scripts and activate) and type:: |
@@ -6,7 +6,7 b' Installation and upgrade on Windows (XP/' | |||||
6 |
|
6 | |||
7 |
|
7 | |||
8 | First-time install |
|
8 | First-time install | |
9 | :::::::::::::::::: |
|
9 | ------------------ | |
10 |
|
10 | |||
11 | Target OS: Windows XP SP3 32-bit English (Clean installation) |
|
11 | Target OS: Windows XP SP3 32-bit English (Clean installation) | |
12 | + All Windows Updates until 24-may-2012 |
|
12 | + All Windows Updates until 24-may-2012 | |
@@ -24,7 +24,7 b' Target OS: Windows XP SP3 32-bit English' | |||||
24 | - http://bugs.python.org/issue7511 |
|
24 | - http://bugs.python.org/issue7511 | |
25 |
|
25 | |||
26 | Step 1 -- Install Visual Studio 2008 Express |
|
26 | Step 1 -- Install Visual Studio 2008 Express | |
27 | -------------------------------------------- |
|
27 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
28 |
|
28 | |||
29 | Optional: You can also install MinGW, but VS2008 installation is easier. |
|
29 | Optional: You can also install MinGW, but VS2008 installation is easier. | |
30 |
|
30 | |||
@@ -58,7 +58,7 b' choose "Visual C++ 2008 Express" when in' | |||||
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 |
|
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 | |
59 |
|
59 | |||
60 | Step 2 -- Install Python |
|
60 | Step 2 -- Install Python | |
61 | ------------------------ |
|
61 | ^^^^^^^^^^^^^^^^^^^^^^^^ | |
62 |
|
62 | |||
63 | Install Python 2.x.y (x = 6 or 7) x86 version (32-bit). DO NOT USE A 3.x version. |
|
63 | Install Python 2.x.y (x = 6 or 7) x86 version (32-bit). DO NOT USE A 3.x version. | |
64 | Download Python 2.x.y from: |
|
64 | Download Python 2.x.y from: | |
@@ -74,7 +74,7 b' be needed in the next step. In this case' | |||||
74 | 64-bit: Just download and install the 64-bit version of python. |
|
74 | 64-bit: Just download and install the 64-bit version of python. | |
75 |
|
75 | |||
76 | Step 3 -- Install Win32py extensions |
|
76 | Step 3 -- Install Win32py extensions | |
77 | ------------------------------------ |
|
77 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
78 |
|
78 | |||
79 | Download pywin32 from: |
|
79 | Download pywin32 from: | |
80 | http://sourceforge.net/projects/pywin32/files/ |
|
80 | http://sourceforge.net/projects/pywin32/files/ | |
@@ -93,7 +93,7 b' http://sourceforge.net/projects/pywin32/' | |||||
93 | http://sourceforge.net/projects/pywin32/files/pywin32/Build%20218/pywin32-218.win-amd64-py2.7.exe/download |
|
93 | http://sourceforge.net/projects/pywin32/files/pywin32/Build%20218/pywin32-218.win-amd64-py2.7.exe/download | |
94 |
|
94 | |||
95 | Step 4 -- Python BIN |
|
95 | Step 4 -- Python BIN | |
96 | -------------------- |
|
96 | ^^^^^^^^^^^^^^^^^^^^ | |
97 |
|
97 | |||
98 | Add Python BIN folder to the path |
|
98 | Add Python BIN folder to the path | |
99 |
|
99 | |||
@@ -120,7 +120,7 b' that came preinstalled in Vista/7 and ca' | |||||
120 | Typically: C:\\Python27 |
|
120 | Typically: C:\\Python27 | |
121 |
|
121 | |||
122 | Step 5 -- Kallithea folder structure |
|
122 | Step 5 -- Kallithea folder structure | |
123 | ------------------------------------ |
|
123 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
124 |
|
124 | |||
125 | Create a Kallithea folder structure |
|
125 | Create a Kallithea folder structure | |
126 |
|
126 | |||
@@ -137,7 +137,7 b' Create the following folder structure::' | |||||
137 | C:\Kallithea\Repos |
|
137 | C:\Kallithea\Repos | |
138 |
|
138 | |||
139 | Step 6 -- Install virtualenv |
|
139 | Step 6 -- Install virtualenv | |
140 | ---------------------------- |
|
140 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
141 |
|
141 | |||
142 | Install Virtual Env for Python |
|
142 | Install Virtual Env for Python | |
143 |
|
143 | |||
@@ -157,7 +157,7 b' where you downloaded "virtualenv.py", an' | |||||
157 | to include it) |
|
157 | to include it) | |
158 |
|
158 | |||
159 | Step 7 -- Install Kallithea |
|
159 | Step 7 -- Install Kallithea | |
160 | --------------------------- |
|
160 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
161 |
|
161 | |||
162 | Finally, install Kallithea |
|
162 | Finally, install Kallithea | |
163 |
|
163 | |||
@@ -195,7 +195,7 b' The prompt will change into "(Env) C:\\\\K' | |||||
195 | Some warnings will appear, don't worry as they are normal. |
|
195 | Some warnings will appear, don't worry as they are normal. | |
196 |
|
196 | |||
197 | Step 8 -- Configuring Kallithea |
|
197 | Step 8 -- Configuring Kallithea | |
198 | ------------------------------- |
|
198 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
199 |
|
199 | |||
200 | steps taken from http://packages.python.org/Kallithea/setup.html |
|
200 | steps taken from http://packages.python.org/Kallithea/setup.html | |
201 |
|
201 | |||
@@ -233,7 +233,7 b' If you make some mistake and the script ' | |||||
233 | it again. |
|
233 | it again. | |
234 |
|
234 | |||
235 | Step 9 -- Running Kallithea |
|
235 | Step 9 -- Running Kallithea | |
236 | --------------------------- |
|
236 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
237 |
|
237 | |||
238 | In the previous command prompt, being in the C:\\Kallithea\\Bin folder, |
|
238 | In the previous command prompt, being in the C:\\Kallithea\\Bin folder, | |
239 | just type:: |
|
239 | just type:: | |
@@ -263,7 +263,7 b' What this Guide does not cover:' | |||||
263 |
|
263 | |||
264 |
|
264 | |||
265 | Upgrading |
|
265 | Upgrading | |
266 | ::::::::: |
|
266 | --------- | |
267 |
|
267 | |||
268 | Stop running Kallithea |
|
268 | Stop running Kallithea | |
269 | Open a CommandPrompt like in Step7 (VS2008 path + activate) and type:: |
|
269 | Open a CommandPrompt like in Step7 (VS2008 path + activate) and type:: |
@@ -346,7 +346,7 b' information check out the Kallithea logs' | |||||
346 | will be saved there. |
|
346 | will be saved there. | |
347 |
|
347 | |||
348 | Active Directory |
|
348 | Active Directory | |
349 | '''''''''''''''' |
|
349 | ^^^^^^^^^^^^^^^^ | |
350 |
|
350 | |||
351 | Kallithea can use Microsoft Active Directory for user authentication. This |
|
351 | Kallithea can use Microsoft Active Directory for user authentication. This | |
352 | is done through an LDAP or LDAPS connection to Active Directory. The |
|
352 | is done through an LDAP or LDAPS connection to Active Directory. The | |
@@ -383,7 +383,7 b" It's also possible for an administrator " | |||||
383 | permissions before the user logs in for the first time, using the :ref:`create-user` API. |
|
383 | permissions before the user logs in for the first time, using the :ref:`create-user` API. | |
384 |
|
384 | |||
385 | Container-based authentication |
|
385 | Container-based authentication | |
386 | '''''''''''''''''''''''''''''' |
|
386 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
387 |
|
387 | |||
388 | In a container-based authentication setup, Kallithea reads the user name from |
|
388 | In a container-based authentication setup, Kallithea reads the user name from | |
389 | the ``REMOTE_USER`` server variable provided by the WSGI container. |
|
389 | the ``REMOTE_USER`` server variable provided by the WSGI container. | |
@@ -393,7 +393,7 b' to configure it to require authenticatio' | |||||
393 | Kallithea. |
|
393 | Kallithea. | |
394 |
|
394 | |||
395 | Proxy pass-through authentication |
|
395 | Proxy pass-through authentication | |
396 | ''''''''''''''''''''''''''''''''' |
|
396 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
397 |
|
397 | |||
398 | In a proxy pass-through authentication setup, Kallithea reads the user name |
|
398 | In a proxy pass-through authentication setup, Kallithea reads the user name | |
399 | from the ``X-Forwarded-User`` request header, which should be configured to be |
|
399 | from the ``X-Forwarded-User`` request header, which should be configured to be |
@@ -151,7 +151,7 b' described in more detail in this documen' | |||||
151 | features that merit further explanation. |
|
151 | features that merit further explanation. | |
152 |
|
152 | |||
153 | Repository extra fields |
|
153 | Repository extra fields | |
154 | ~~~~~~~~~~~~~~~~~~~~~~~ |
|
154 | ^^^^^^^^^^^^^^^^^^^^^^^ | |
155 |
|
155 | |||
156 | In the *Visual* tab, there is an option "Use repository extra |
|
156 | In the *Visual* tab, there is an option "Use repository extra | |
157 | fields", which allows to set custom fields for each repository in the system. |
|
157 | fields", which allows to set custom fields for each repository in the system. | |
@@ -165,7 +165,7 b' about a manager of each repository. The' | |||||
165 | Newly created fields are accessible via the API. |
|
165 | Newly created fields are accessible via the API. | |
166 |
|
166 | |||
167 | Meta tagging |
|
167 | Meta tagging | |
168 | ~~~~~~~~~~~~ |
|
168 | ^^^^^^^^^^^^ | |
169 |
|
169 | |||
170 | In the *Visual* tab, option "Stylify recognised meta tags" will cause Kallithea |
|
170 | In the *Visual* tab, option "Stylify recognised meta tags" will cause Kallithea | |
171 | to turn certain text fragments in repository and repository group |
|
171 | to turn certain text fragments in repository and repository group |
@@ -23,7 +23,7 b' Git support' | |||||
23 |
|
23 | |||
24 |
|
24 | |||
25 | Web server with chunked encoding |
|
25 | Web server with chunked encoding | |
26 | ```````````````````````````````` |
|
26 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
27 |
|
27 | |||
28 | Large Git pushes require an HTTP server with support for |
|
28 | Large Git pushes require an HTTP server with support for | |
29 | chunked encoding for POST. The Python web servers waitress_ and |
|
29 | chunked encoding for POST. The Python web servers waitress_ and | |
@@ -51,7 +51,7 b' Mercurial support' | |||||
51 |
|
51 | |||
52 |
|
52 | |||
53 | Working with Mercurial subrepositories |
|
53 | Working with Mercurial subrepositories | |
54 | `````````````````````````````````````` |
|
54 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
55 |
|
55 | |||
56 | This section explains how to use Mercurial subrepositories_ in Kallithea. |
|
56 | This section explains how to use Mercurial subrepositories_ in Kallithea. | |
57 |
|
57 |
@@ -15,6 +15,16 b' spaces = [' | |||||
15 | (1, 0), |
|
15 | (1, 0), | |
16 | ] |
|
16 | ] | |
17 |
|
17 | |||
|
18 | # http://sphinx-doc.org/rest.html : | |||
|
19 | # for the Python documentation, this convention is used which you may follow: | |||
|
20 | # # with overline, for parts | |||
|
21 | # * with overline, for chapters | |||
|
22 | # =, for sections | |||
|
23 | # -, for subsections | |||
|
24 | # ^, for subsubsections | |||
|
25 | # ", for paragraphs | |||
|
26 | pystyles = ['#', '*', '=', '-', '^', '"'] | |||
|
27 | ||||
18 | # match on a header line underlined with one of the valid characters |
|
28 | # match on a header line underlined with one of the valid characters | |
19 | headermatch = re.compile(r'''\n*(.+)\n([][!"#$%&'()*+,./:;<=>?@\\^_`{|}~-])\2{2,}\n+''', flags=re.MULTILINE) |
|
29 | headermatch = re.compile(r'''\n*(.+)\n([][!"#$%&'()*+,./:;<=>?@\\^_`{|}~-])\2{2,}\n+''', flags=re.MULTILINE) | |
20 |
|
30 | |||
@@ -44,13 +54,16 b' def main():' | |||||
44 | # remove superfluous spacing (may however be restored by header spacing) |
|
54 | # remove superfluous spacing (may however be restored by header spacing) | |
45 | s = re.sub(r'''(\n\n)\n*''', r'\1', s, flags=re.MULTILINE) |
|
55 | s = re.sub(r'''(\n\n)\n*''', r'\1', s, flags=re.MULTILINE) | |
46 |
|
56 | |||
47 | # rewrite header markup with correct style, length and spacing |
|
57 | if styles: | |
48 | def subf(m): |
|
58 | newstyles = pystyles[pystyles.index(styles[0]):] | |
49 | title, style = m.groups() |
|
59 | ||
50 | level = styles.index(style) |
|
60 | def subf(m): | |
51 | before, after = spaces[level] |
|
61 | title, style = m.groups() | |
52 | return '\n' * (before + 1) + title + '\n' + style * len(title) + '\n' * (after + 1) |
|
62 | level = styles.index(style) | |
53 | s = headermatch.sub(subf, s) |
|
63 | before, after = spaces[level] | |
|
64 | newstyle = newstyles[level] | |||
|
65 | return '\n' * (before + 1) + title + '\n' + newstyle * len(title) + '\n' * (after + 1) | |||
|
66 | s = headermatch.sub(subf, s) | |||
54 |
|
67 | |||
55 | # remove superfluous spacing when headers are adjacent |
|
68 | # remove superfluous spacing when headers are adjacent | |
56 | s = re.sub(r'''(\n.+\n([][!"#$%&'()*+,./:;<=>?@\\^_`{|}~-])\2{2,}\n\n\n)\n*''', r'\1', s, flags=re.MULTILINE) |
|
69 | s = re.sub(r'''(\n.+\n([][!"#$%&'()*+,./:;<=>?@\\^_`{|}~-])\2{2,}\n\n\n)\n*''', r'\1', s, flags=re.MULTILINE) |
General Comments 0
You need to be logged in to leave comments.
Login now