# HG changeset patch # User Marcin Kuzminski # Date 2017-08-04 13:42:14 # Node ID e0e75f829f34953952df4807f3a1ba1685680cac # Parent f730a999c99558db96a0e877ad1b528e35791d5e core: added two new commands rcsetup-app and rcupgrade-db that will replace pserve equivalents. - pserver uses some internals from pylons, and we want to remove this. diff --git a/rhodecode/lib/rc_commands/setup_rc.py b/rhodecode/lib/rc_commands/setup_rc.py new file mode 100644 --- /dev/null +++ b/rhodecode/lib/rc_commands/setup_rc.py @@ -0,0 +1,35 @@ +# -*- coding: utf-8 -*- + +# Copyright (C) 2016-2017 RhodeCode GmbH +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License, version 3 +# (only), as published by the Free Software Foundation. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +# This program is dual-licensed. If you wish to learn more about the +# RhodeCode Enterprise Edition, including its added features, Support services, +# and proprietary license terms, please see https://rhodecode.com/licenses/ + +import click + +from pyramid.paster import bootstrap +from pyramid.request import Request +import pyramid.paster + + +@click.command() +@click.argument('ini_path', type=click.Path(exists=True)) +def main(ini_path): + pyramid.paster.setup_logging(ini_path) + + request = Request.blank('/', base_url='https://rhodecode-app.com/') + with bootstrap(ini_path, request=request) as env: + print(env['request'].application_url) \ No newline at end of file diff --git a/rhodecode/lib/rc_commands/upgrade_db.py b/rhodecode/lib/rc_commands/upgrade_db.py new file mode 100644 --- /dev/null +++ b/rhodecode/lib/rc_commands/upgrade_db.py @@ -0,0 +1,37 @@ +# -*- coding: utf-8 -*- + +# Copyright (C) 2016-2017 RhodeCode GmbH +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License, version 3 +# (only), as published by the Free Software Foundation. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +# This program is dual-licensed. If you wish to learn more about the +# RhodeCode Enterprise Edition, including its added features, Support services, +# and proprietary license terms, please see https://rhodecode.com/licenses/ + +import click + +from pyramid.paster import bootstrap +from pyramid.request import Request +import pyramid.paster + + +@click.command() +@click.argument('ini_path', type=click.Path(exists=True)) +def main(ini_path): + pyramid.paster.setup_logging(ini_path) + + request = Request.blank('/', base_url='https://rhodecode-app.com/') + with bootstrap(ini_path, request=request) as env: + print(env['request'].application_url) + + diff --git a/setup.py b/setup.py --- a/setup.py +++ b/setup.py @@ -249,6 +249,8 @@ setup( ], 'console_scripts': [ 'rcserver=rhodecode.rcserver:main', + 'rcsetup-app=rhodecode.lib.rc_commands.setup_rc:main', + 'rcupgrade-db=rhodecode.lib.rc_commands.upgrade_db:main', ], 'beaker.backends': [ 'memorylru_base=rhodecode.lib.memory_lru_debug:MemoryLRUNamespaceManagerBase',