runbot/runbot_merge/models
Xavier Morel 0334225114 [FIX] runbot_merge: read sha first in commit statuses broadcast
Because the first operation the notification task performs is updating
the commit, this has to be flushed in order to read-back the commit
hash (probably fixed in later version).

This means if updating the flag triggers a serialization
failure (which happens and is normal) we transition to the `exception`
handler, which *tries to retrieve the sha again* and we get an "in
failed transaction" error on top of the current "serialization
failure", leading to a giant traceback.

Also an unhelpful one since a serialization failure is expected in
this cron.

- Move the reads with no write dependency out of the `try`, there's no
  reason for them to fail, and notably memoize the `sha`.
- Split the handling of serialization failures out of the normal one,
  and just log an `info` (we could actually log nothing, probably).
- Also set the precommit data just before the commit, in case staging
  tracking is ever a thing which could use it.

Fixes #909
2024-08-05 16:16:17 +02:00
..
crons [IMP] runbot_merge: prune repo during maintenance 2024-08-05 09:03:39 +02:00
project_freeze [CHG] forwardport: perform forward porting without working copies 2024-07-08 14:37:14 +02:00
staging_cancel [ADD] runbot_merge: stagings canceling wizard 2022-12-08 10:46:22 +01:00
__init__.py [ADD] *: per-repository webhook secret 2024-06-06 11:07:57 +02:00
batch.py [IMP] *: trigger-ify staging cron 2024-08-02 15:14:50 +02:00
commands.py [CHG] runbot_merge: deskill mergebot feedback 2024-08-05 09:09:23 +02:00
events_sources.py [ADD] *: per-repository webhook secret 2024-06-06 11:07:57 +02:00
ir_actions.py [IMP] runbot_merge: add json & requests to server actions context 2023-02-20 10:13:05 +01:00
project.py [ADD] *: per-repository webhook secret 2024-06-06 11:07:57 +02:00
pull_requests.py [FIX] runbot_merge: read sha first in commit statuses broadcast 2024-08-05 16:16:17 +02:00
res_partner.py [ADD] runbot_merge: ad-hoc ACL tracking to res.partner 2024-05-16 09:32:03 +02:00
stagings_create.py [FIX] *: don't send merge errors to logging 2024-07-26 14:48:59 +02:00
utils.py [ADD] runbot_merge: rendering of PR descriptions 2024-07-15 10:28:28 +02:00