1
1
from sys import stdout, stderr, exit
3
from xmlrpc.client import Fault
3
from xmlrpclib import Fault
4
4
import openerplib103 as openerplib
6
6
from tests.openerplib import db
11
from breezy.workingtree import WorkingTree
12
from breezy.branch import Branch
13
#from bzrlib.workingtree import WorkingTree
14
#from bzrlib.branch import BzrBranch
17
__all__ = ['server', 'client', 'db_instance', 'Synchro', 'HQ', 'Coordo', 'Project', 'Project2', 'check_lp_update', 'get_revno_from_path']
10
__all__ = ['server', 'client', 'db_instance', 'Synchro', 'HQ', 'Coordo', 'Project', 'Project2']
19
12
server, client = None, None
87
'protocol' : 'xmlrpc',
80
'protocol' : 'netrpc',
88
81
'host' : config.server_host,
89
'port' : config.server_port,
82
'port' : config.netrpc_port,
90
83
'database' : Synchro.name,
92
85
'password' : hq_name,
101
'protocol' : 'xmlrpc',
94
'protocol' : 'netrpc',
102
95
'host' : config.server_host,
103
'port' : config.server_port,
96
'port' : config.netrpc_port,
104
97
'database' : Synchro.name,
105
98
'login' : coordo_name,
106
99
'password' : coordo_name,
113
106
name=project_name,
115
'protocol' : 'xmlrpc',
108
'protocol' : 'netrpc',
116
109
'host' : config.server_host,
117
'port' : config.server_port,
110
'port' : config.netrpc_port,
118
111
'database' : Synchro.name,
119
112
'login' : project_name,
120
113
'password' : project_name,
127
120
name=project2_name,
129
'protocol' : 'xmlrpc',
122
'protocol' : 'netrpc',
130
123
'host' : config.server_host,
131
'port' : config.server_port,
124
'port' : config.netrpc_port,
132
125
'database' : Synchro.name,
133
126
'login' : project2_name,
134
127
'password' : project2_name,
138
def get_lp_branch(wk):
139
if isinstance(wk.branch, Branch):
140
parent = wk.branch.get_parent()
142
parent = wk.branch.get_bound_location()
144
parent = wk.branch.bzrdir.root_transport.base
147
def get_revno_from_path(path):
148
if os.path.islink(path):
149
path = os.path.realpath(path)
150
wt = WorkingTree.open(path)
151
lr = wt.last_revision()
153
revno = wt.branch.revision_id_to_dotted_revno(lr)[0]
156
rev = wt.branch.repository.get_revision(lr)
157
return {'revno': revno, 'lastmsg': rev.get_summary(), 'lpurl': get_lp_branch(wt)}
159
def check_lp_update(update=False):
161
for ad in config.addons:
162
src_path = os.path.join(config.source_path, ad)
163
info = get_revno_from_path(src_path)
165
br = Branch.open(info['lpurl'])
166
lr = br.last_revision()
167
revno = br.revision_id_to_dotted_revno(lr)[0]
169
if revno > info['revno']:
172
wt = WorkingTree.open(src_path)