Данный скрипт:
• Создает репозиторий
• Прописывает его в файл настроек
• Добавляет права на push в новый репозиторий
Файл /opt/append.wsgi
[code]
# coding: utf-8
import sys
import os
path = os.path.dirname(__file__)
sys.path.append(path)
os.chdir(path)
def application(environ, start_response):
status = '200 OK'
output = '
\n'
output += 'Projects
\n'
ok = 0
for s in open('hgwebdir.conf','r').readlines():
s = s.rstrip()
if s=='[paths]':
ok = 1
continue
if ok==1:
d = s.split('=')
if len(d)==2: output += '%s
\n' % (d[0],d[0])
q = environ['QUERY_STRING']
if q[:4]=='new=':
name = q[4:]
if name and not os.path.isdir(name):
os.system('hg init ' + name)
open('hgwebdir.conf','a').write('%s = /var/hg/rep/%s\n' % (name,name))
open(name+'/.hg/hgrc','a').write('\n[web]\nallow_push = *\npush_ssl = false\n')
output = 'append ok
\nreturn'
response_headers = [('Content-type', 'text/html; charset=utf-8'),
('Content-Length', str(len(output)))]
start_response(status, response_headers)
return [output]
[/code]
Прописывем в Апач
[code]
WSGIScriptAlias /append /opt/append.wsgi
[/code]
Должно работать
Комментариев нет:
Отправить комментарий