Vo Minh Thu (OpenERP) has proposed merging 
lp:~openerp-dev/openobject-server/trunk-liner-vmt into lp:openobject-server.

Requested reviews:
  OpenERP Core Team (openerp)

For more details, see:
https://code.launchpad.net/~openerp-dev/openobject-server/trunk-liner-vmt/+merge/84085

This branch provides an alternative to the openerp-server script, named 
openerp-liner. It uses the argparse library to implements sub-commands. Each 
sub-command lives in its own openerp/liner/<sub-command>.py file. It should be 
much easier to maintain and modify, giving us the opportunity to add new 
commands as we see fit.
-- 
https://code.launchpad.net/~openerp-dev/openobject-server/trunk-liner-vmt/+merge/84085
Your team OpenERP R&D Team is subscribed to branch 
lp:~openerp-dev/openobject-server/trunk-liner-vmt.
=== added file 'openerp-liner'
--- openerp-liner	1970-01-01 00:00:00 +0000
+++ openerp-liner	2011-12-01 11:26:24 +0000
@@ -0,0 +1,8 @@
+#!/usr/bin/python
+
+import openerp.liner
+
+if __name__ == '__main__':
+    parser = openerp.liner.main_parser()
+    args = parser.parse_args()
+    args.run(args)

=== added directory 'openerp/liner'
=== added file 'openerp/liner/__init__.py'
--- openerp/liner/__init__.py	1970-01-01 00:00:00 +0000
+++ openerp/liner/__init__.py	2011-12-01 11:26:24 +0000
@@ -0,0 +1,11 @@
+import argparse
+
+from . import install
+from . import update
+
+def main_parser():
+    parser = argparse.ArgumentParser()
+    subparsers = parser.add_subparsers()
+    install.add_parser(subparsers)
+    update.add_parser(subparsers)
+    return parser

=== added file 'openerp/liner/install.py'
--- openerp/liner/install.py	1970-01-01 00:00:00 +0000
+++ openerp/liner/install.py	2011-12-01 11:26:24 +0000
@@ -0,0 +1,27 @@
+import os
+
+import openerp
+
+def run(args):
+    assert args.database
+    config = openerp.tools.config
+    if args.all_modules:
+        if os.path.exists("../../addons/trunk"): # TODO not hardcoded addons-path
+            module_names = list(set(os.listdir("../../addons/trunk")))
+            [n in module_names and module_names.remove(n) and f(n) for n in args.exclude]
+            config['init'] = dict.fromkeys(module_names, 1)
+            config['addons_path'] = "../../addons/trunk"
+    openerp.modules.registry.RegistryManager.get(
+        args.database, update_module=True, pooljobs=False)
+
+def add_parser(subparsers):
+    parser = subparsers.add_parser('install',
+        description='Create and initialize a new OpenERP database.')
+    parser.add_argument('-d', '--database', metavar='DATABASE', required=True,
+        help='the database to create')
+    parser.add_argument('--all-modules', action='store_true',
+        help='install all visible modules')
+    parser.add_argument('--exclude', metavar='MODULE', action='append',
+        help='exclude a module from installation (this option can be repeated)')
+
+    parser.set_defaults(run=run)

=== added file 'openerp/liner/update.py'
--- openerp/liner/update.py	1970-01-01 00:00:00 +0000
+++ openerp/liner/update.py	2011-12-01 11:26:24 +0000
@@ -0,0 +1,16 @@
+import openerp
+
+def run(args):
+    assert args.database
+    config = openerp.tools.config
+    config['update']['all'] = 1
+    openerp.modules.registry.RegistryManager.get(
+        args.database, update_module=True, pooljobs=False)
+
+def add_parser(subparsers):
+    parser = subparsers.add_parser('update',
+        description='Update an existing OpenERP database.')
+    parser.add_argument('-d', '--database', metavar='DATABASE', required=True,
+        help='the database to update')
+
+    parser.set_defaults(run=run)

_______________________________________________
Mailing list: https://launchpad.net/~openerp-dev-gtk
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~openerp-dev-gtk
More help   : https://help.launchpad.net/ListHelp

Reply via email to