OCA / interface-github

Tools to interact with github from Odoo
GNU Affero General Public License v3.0
46 stars 77 forks source link

[14.0] github_connector_odoo fails while trying to sync repo branches with cron #80

Closed ivs-cetmix closed 2 years ago

ivs-cetmix commented 2 years ago

Module

github_connector_odoo

Describe the bug

Error while syncing github repos via scheduled action

To Reproduce

14.0:

Steps to reproduce the behavior:

  1. Go to Settings/Technical/Scheduled Actions/Synchronize Branches List for All Repositories
  2. Click "Run now"

OR enable this job and wait for it to start

Expected behavior Cron job is started, branches are synced

Additional context Testing on runbot http://oca-interface-github-14-0-e0d4869f0f00.runboat.odoo-community.org/

Error code Cron job is started, branches are synced

Traceback (most recent call last):
  File "/opt/odoo/odoo/addons/base/models/ir_http.py", line 237, in _dispatch
    result = request.dispatch()
  File "/opt/odoo/odoo/http.py", line 683, in dispatch
    result = self._call_function(**self.params)
  File "/opt/odoo/odoo/http.py", line 359, in _call_function
    return checked_call(self.db, *args, **kwargs)
  File "/opt/odoo/odoo/service/model.py", line 94, in wrapper
    return f(dbname, *args, **kwargs)
  File "/opt/odoo/odoo/http.py", line 347, in checked_call
    result = self.endpoint(*a, **kw)
  File "/opt/odoo/odoo/http.py", line 912, in __call__
    return self.method(*args, **kw)
  File "/opt/odoo/odoo/http.py", line 531, in response_wrap
    response = f(*args, **kw)
  File "/opt/odoo/addons/web/controllers/main.py", line 1398, in call_button
    action = self._call_kw(model, method, args, kwargs)
  File "/opt/odoo/addons/web/controllers/main.py", line 1386, in _call_kw
    return call_kw(request.env[model], method, args, kwargs)
  File "/opt/odoo/odoo/api.py", line 399, in call_kw
    result = _call_kw_multi(method, model, args, kwargs)
  File "/opt/odoo/odoo/api.py", line 386, in _call_kw_multi
    result = method(recs, *args, **kwargs)
  File "/opt/odoo/odoo/addons/base/models/ir_cron.py", line 83, in method_direct_trigger
    cron.with_user(cron.user_id).with_context(lastcall=cron.lastcall).ir_actions_server_id.run()
  File "/opt/odoo/odoo/addons/base/models/ir_actions.py", line 632, in run
    res = runner(run_self, eval_context=eval_context)
  File "/opt/odoo/odoo/addons/base/models/ir_actions.py", line 501, in _run_action_code_multi
    safe_eval(self.code.strip(), eval_context, mode="exec", nocopy=True)  # nocopy allows to return 'action'
  File "/opt/odoo/odoo/tools/safe_eval.py", line 346, in safe_eval
    raise ValueError('%s: "%s" while evaluating\n%r' % (ustr(type(e)), ustr(e), expr))
Exception

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/opt/odoo/odoo/http.py", line 639, in _handle_exception
    return super(JsonRequest, self)._handle_exception(exception)
  File "/opt/odoo/odoo/http.py", line 315, in _handle_exception
    raise exception.with_traceback(None) from new_cause
ValueError: <class 'ValueError'>: "Expected singleton: github.repository(9, 10, 11, 12, 76, 13, 16, 15, 14, 64, 18, 96, 151, 17, 98, 190, 134, 158, 68, 52, 57, 58, 69, 75, 166, 87, 143, 144, 59, 61, 97, 122, 62, 73, 60, 99, 178, 95, 120, 48, 4, 213, 168, 22, 165, 169, 159, 26, 65, 201, 102, 106, 34, 139, 113, 170, 199, 37, 202, 188, 33, 195, 196, 197, 137, 141, 140, 176, 36, 89, 185, 173, 81, 2, 136, 5, 145, 112, 85, 94, 167, 126, 175, 133, 92, 70, 90, 179, 111, 131, 117, 115, 8, 163, 80, 194, 84, 128, 91, 109, 125, 172, 104, 101, 174, 130, 63, 6, 110, 147, 132, 191, 119, 181, 116, 86, 146, 82, 72, 149, 41, 39, 40, 35, 212, 150, 184, 38, 200, 204, 135, 157, 180, 207, 171, 7, 1, 189, 186, 152, 162, 108, 198, 3, 107, 127, 67, 187, 203, 88, 42, 206, 44, 193, 43, 49, 47, 160, 46, 23, 24, 123, 142, 211, 71, 50, 177, 66, 205, 210, 74, 20, 208, 21, 19, 183, 154, 156, 155, 161, 53, 153, 214, 118, 27, 31, 29, 100, 30, 28, 182, 114, 32, 103, 105, 121, 93, 78, 215, 54, 129, 25, 79, 77, 56, 148, 209, 55, 45, 124, 51, 83, 138, 164, 192)" while evaluating
'model.cron_update_branch_list()'
pedrobaeza commented 2 years ago

Fixed in #81