Files
@ e71216a16853
Branch filter:
Location: kallithea/scripts/generate-ini.py - annotation
e71216a16853
2.0 KiB
text/x-python
docs: reorganize index page
Reorganize the index page of the manual into three main sections:
administrator guide, user guide, developer guide. In principle,
administrators, users and developers are independent roles that can be
fulfilled by different people.
'Administrators' install, configure and maintain Kallithea. They have
'admin' privilege in the web interface.
'Users' do not have access to the Kallithea installation files. They can
only access the web interface, and generally do not have 'admin' privilege.
They may be the owner of repositories, repository groups, or user groups,
and as such modify the settings of these objects, even though they cannot
modify the settings of Kallithea itself.
'Developers' modify the Kallithea source code. They may or may not
contribute these changes back to the Kallithea community.
The 'Readme' section is a bit outside of this classification. As it serves
as a basic introduction to Kallithea, it is kept first.
The 'Index' and 'Search' functionality are not really 'part of' the manual,
so should not be under 'Other topics'. Instead they are put at the very top
so they are readily visible.
This commit is only changing the index page. Subsequent commits can move and
split some documentation files in the repository to mirror this structure.
For example, the 'Version control systems support' page has information for
administrators (ini settings and importing existing repositories) as well as
for users (handling Mercurial subrepositories).
Reorganize the index page of the manual into three main sections:
administrator guide, user guide, developer guide. In principle,
administrators, users and developers are independent roles that can be
fulfilled by different people.
'Administrators' install, configure and maintain Kallithea. They have
'admin' privilege in the web interface.
'Users' do not have access to the Kallithea installation files. They can
only access the web interface, and generally do not have 'admin' privilege.
They may be the owner of repositories, repository groups, or user groups,
and as such modify the settings of these objects, even though they cannot
modify the settings of Kallithea itself.
'Developers' modify the Kallithea source code. They may or may not
contribute these changes back to the Kallithea community.
The 'Readme' section is a bit outside of this classification. As it serves
as a basic introduction to Kallithea, it is kept first.
The 'Index' and 'Search' functionality are not really 'part of' the manual,
so should not be under 'Other topics'. Instead they are put at the very top
so they are readily visible.
This commit is only changing the index page. Subsequent commits can move and
split some documentation files in the repository to mirror this structure.
For example, the 'Version control systems support' page has information for
administrators (ini settings and importing existing repositories) as well as
for users (handling Mercurial subrepositories).
06d5c043e989 06d5c043e989 213085032127 06d5c043e989 06d5c043e989 06d5c043e989 06d5c043e989 06d5c043e989 06d5c043e989 e3cce237d77c e3cce237d77c 06d5c043e989 06d5c043e989 06d5c043e989 06d5c043e989 06d5c043e989 06d5c043e989 06d5c043e989 06d5c043e989 fc6b1b0e1096 06d5c043e989 06d5c043e989 06d5c043e989 06d5c043e989 06d5c043e989 06d5c043e989 06d5c043e989 06d5c043e989 06d5c043e989 150173a027ee 150173a027ee 150173a027ee 150173a027ee 150173a027ee 150173a027ee 150173a027ee 150173a027ee 150173a027ee 150173a027ee 150173a027ee 150173a027ee 150173a027ee 150173a027ee 150173a027ee 150173a027ee 150173a027ee 150173a027ee 150173a027ee 150173a027ee 150173a027ee 06d5c043e989 06d5c043e989 06d5c043e989 06d5c043e989 06d5c043e989 06d5c043e989 06d5c043e989 94f6b23e52d0 06d5c043e989 665dfa112f2c 06d5c043e989 06d5c043e989 06d5c043e989 06d5c043e989 665dfa112f2c 06d5c043e989 06d5c043e989 d06039dc4ca2 06d5c043e989 94f6b23e52d0 94f6b23e52d0 06d5c043e989 06d5c043e989 06d5c043e989 | #!/usr/bin/env python2
"""
Based on kallithea/lib/paster_commands/template.ini.mako, generate
development.ini
kallithea/tests/test.ini
"""
import re
from kallithea.lib import inifile
# files to be generated from the mako template
ini_files = [
('development.ini',
{
'[server:main]': {
'host': '0.0.0.0',
},
'[app:main]': {
'debug': 'true',
'app_instance_uuid': 'development-not-secret',
'beaker.session.secret': 'development-not-secret',
},
'[handler_console]': {
'formatter': 'color_formatter',
},
'[handler_console_sql]': {
'formatter': 'color_formatter_sql',
},
'[logger_routes]': {
'level': 'DEBUG',
},
'[logger_beaker]': {
'level': 'DEBUG',
},
'[logger_templates]': {
'level': 'INFO',
},
'[logger_kallithea]': {
'level': 'DEBUG',
},
'[logger_tg]': {
'level': 'DEBUG',
},
'[logger_gearbox]': {
'level': 'DEBUG',
},
'[logger_whoosh_indexer]': {
'level': 'DEBUG',
},
},
),
]
def main():
# make sure all mako lines starting with '#' (the '##' comments) are marked up as <text>
makofile = inifile.template_file
print 'reading:', makofile
mako_org = open(makofile).read()
mako_no_text_markup = re.sub(r'</?%text>', '', mako_org)
mako_marked_up = re.sub(r'\n(##.*)', r'\n<%text>\1</%text>', mako_no_text_markup, flags=re.MULTILINE)
if mako_marked_up != mako_org:
print 'writing:', makofile
open(makofile, 'w').write(mako_marked_up)
# create ini files
for fn, settings in ini_files:
print 'updating:', fn
inifile.create(fn, None, settings)
if __name__ == '__main__':
main()
|