runbot/runbot_merge/controllers
Xavier Morel 4a4252b4b9 [FIX] runbot_merge: holes in provisioning
- github logins are case-insensitive while the db field is CI the dict
  in which partners are stored for matching is not, And the caller may
  not preserve casing.

  Thus it's necessary to check the casefolded database values against
  casefolded parameters, rather than exactly.
- users may get disabled by mistake or when one leaves the project,
  they may also get switched from internal to portal, therefore it is
  necessary to re-enable and re-enroll them if they come back.
- while at it remove the user's email when they depart, as they likely
  use an organisational email which they don't have access to anymore

Side-note, but remove the limit on the number of users / partners
being created at once: because there are almost no modules in the
mergebot's instance, creating partner goes quite fast (compared to a
full instance), thus the limitation is almost certainly unnecessary
(creating ~300 users seems to take ~450ms).

Fixes ##776
2023-06-14 16:01:42 +02:00
..
__init__.py [FIX] runbot_merge: correctly check request in handle_pr 2023-06-14 16:01:42 +02:00
dashboard.py [IMP] runbot_merge: add sitemap params to http controllers 2023-06-14 16:01:42 +02:00
reviewer_provisioning.py [FIX] runbot_merge: holes in provisioning 2023-06-14 16:01:42 +02:00