[FIX] doc: fetch font over https
[odoo/odoo.git] / odoo.py
diff --git a/odoo.py b/odoo.py
index 54e3272..e5f861b 100755 (executable)
--- a/odoo.py
+++ b/odoo.py
@@ -1,4 +1,4 @@
-#!/usr/bin/env python2
+#!/usr/bin/env python
 #----------------------------------------------------------
 # odoo cli
 #
@@ -25,7 +25,7 @@ GIT_HOOKS_PRE_PUSH = """
 import re
 import sys
 if re.search('github.com[:/]odoo/odoo.git$', sys.argv[2]):
-    print "Pushing to /odoo/odoo.git is forbidden, please push to odoo-dev, use -f to override"
+    print "Pushing to /odoo/odoo.git is forbidden, please push to odoo-dev, use --no-verify to override"
     sys.exit(1)
 """
 
@@ -47,31 +47,35 @@ def git_locate():
         os.chdir('odoo')
 
     path = os.getcwd()
-    while path != '/':
+    while path != os.path.abspath(os.sep):
         gitconfig_path = os.path.join(path, '.git/config')
         if os.path.isfile(gitconfig_path):
-            content = open(gitconfig_path).read()
-            if re.search('github.com[:/]odoo/odoo.git', content):
+            release_py = os.path.join(path, 'openerp/release.py')
+            if os.path.isfile(release_py):
                 break
         path = os.path.dirname(path)
-    if path == '/':
+    if path == os.path.abspath(os.sep):
         path = None
     return path
 
-def cmd_setup_git_init():
+def cmd_setup_git():
     git_dir = git_locate()
     if git_dir:
         printf('git repo found at %s',git_dir)
     else:
         run("git", "init", "odoo")
-        git_dir = os.path.join(os.getcwd(), 'odoo')
+        os.chdir('odoo')
+        git_dir = os.getcwd()
     if git_dir:
-        # sane push config for git < 2.0
-        run('git','config','push.default','simple')
+        # push sane config for git < 2.0, and hooks
+        #run('git','config','push.default','simple')
+        # alias
+        run('git','config','alias.st','status')
         # merge bzr style
-        run('git','config','merge.ff','no')
         run('git','config','merge.commit','no')
-        # push hooks
+        # pull let me choose between merge or rebase only works in git > 2.0, use an alias for 1
+        run('git','config','pull.ff','only')
+        run('git','config','alias.pl','pull --ff-only')
         pre_push_path = os.path.join(git_dir, '.git/hooks/pre-push')
         open(pre_push_path,'w').write(GIT_HOOKS_PRE_PUSH.strip())
         os.chmod(pre_push_path, 0755)
@@ -92,7 +96,7 @@ def cmd_setup_git_init():
     else:
         printf('no git repo found')
 
-def cmd_setup_git_odoo_dev():
+def cmd_setup_git_dev():
     git_dir = git_locate()
     if git_dir:
         # setup odoo-dev remote
@@ -102,7 +106,7 @@ def cmd_setup_git_odoo_dev():
         run('git','config','--add','remote.odoo-dev.fetch','+refs/pull/*:refs/remotes/odoo-dev/pull/*')
         run('git','remote','update')
 
-def cmd_setup_git_odoo_review():
+def cmd_setup_git_review():
     git_dir = git_locate()
     if git_dir:
         # setup odoo-dev remote
@@ -116,6 +120,7 @@ def setup_deps_debian(git_dir):
     debian_control_path = os.path.join(git_dir, 'debian/control')
     debian_control = open(debian_control_path).read()
     debs = re.findall('python-[0-9a-z]+',debian_control)
+    debs += ["postgresql"]
     proc = subprocess.Popen(['sudo','apt-get','install'] + debs, stdin=open('/dev/tty'))
     proc.communicate()
 
@@ -136,7 +141,7 @@ def cmd_setup_pg():
             setup_pg_debian(git_dir)
 
 def cmd_setup():
-    cmd_setup_git_init()
+    cmd_setup_git()
     cmd_setup_deps()
     cmd_setup_pg()