Простой скрипт создания репозиториев для mercurial сервера

Данный скрипт: • Создает репозиторий • Прописывает его в файл настроек • Добавляет права на 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] Должно работать

Комментариев нет:

Отправить комментарий