# -*- coding: utf-8 -*- import os from werkzeug.serving import run_simple from werkzeug.wsgi import DispatcherMiddleware from sina import Sina from sina.config import DEFAULT_CONFIG from vilya import api, frontend from vilya.middleware import GitDispatcher frontend_app = frontend.create_app() api_app = api.create_app() PROJECT_ROOT = api_app.config['REPO_PATH'] DEFAULT_CONFIG['project_root'] = PROJECT_ROOT DEFAULT_CONFIG['chunked'] = True sina_app = Sina(DEFAULT_CONFIG) @sina_app.get_repo_path def get_repo_path_handler(environ, path): with api_app.app_context(): from vilya.services import users, projects user = users.get_by_name_path(path) if user: print user.name project = projects.get_by_name_path(path) return os.path.join(PROJECT_ROOT, project.path) @sina_app.has_permission
#!/usr/bin/env python # encoding: utf-8 import yoyo import subprocess import logging import re import os import time from vilya.frontend import create_app from docopt import docopt from yoyo.connections import connect app = create_app() logging.basicConfig(level=logging.INFO) def retab(docs): lines = docs.split('\n') while lines: l = lines[0] if not l.strip(): lines = lines[1:] else: break if not lines: return docs fl = lines[0] space = re.compile('^\s+') flspace = space.match(fl)
def _create_app(self, settings): return create_app(settings)
# -*- coding: utf-8 -*- from werkzeug.serving import run_simple from werkzeug.wsgi import DispatcherMiddleware from vilya import api, frontend application = DispatcherMiddleware(frontend.create_app(), { '/api': api.create_app() }) if __name__ == "__main__": run_simple('0.0.0.0', 5000, application, use_reloader=True, use_debugger=True)
# -*- coding: utf-8 -*- from flask.ext.script import Manager from flask.ext.assets import ManageAssets from vilya.frontend import create_app from vilya.manage import (CreateUserCommand, DeleteUserCommand, ListUsersCommand, CreateProjectCommand, DeleteProjectCommand, ListProjectsCommand) manager = Manager(create_app()) manager.add_command('create_user', CreateUserCommand()) manager.add_command('delete_user', DeleteUserCommand()) manager.add_command('list_users', ListUsersCommand()) manager.add_command('create_project', CreateProjectCommand()) manager.add_command('delete_project', DeleteProjectCommand()) manager.add_command('list_projects', ListProjectsCommand()) manager.add_command('assets', ManageAssets()) if __name__ == "__main__": manager.run()