runbot/runbot_merge/__manifest__.py
Xavier Morel fec3d39d19 [ADD] *: per-repository webhook secret
Currently webhook secrets are configured per *project* which is an
issue both because different repositories may have different
administrators and thus creates safety concerns, and because multiple
repositories can feed into different projects (e.g. on mergebot,
odoo-dev/odoo is both an ancillary repository to the main RD project,
and the main repository to the minor / legacy master-wowl
project). This means it can be necessary to have multiple projects
share the same secret as well, this then mandates the secret for more
repositories per (1).

This is a pain in the ass, so just detach secrets from projects and
link them *only* to repositories, it's cleaner and easier to manage
and set up progressively.

This requires a lot of changes to the tests, as they all need to
correctly configure the signaling.

For `runbot_merge` there was *some* setup sharing already via the
module-level `repo` fixtures`, those were merged into a conftest-level
fixture which could handle the signaling setup. A few tests which
unnecessarily set up repositories ad-hoc were also moved to the
fixture. But for most of the ad-hoc setup in `runbot_merge`, as well
as `forwardport` where it's all ad-hoc, events sources setup was just
appended as is. This should probably be cleaned up at one point, with
the various requirements collected and organised into a small set of
fixtures doing the job more uniformly.

Fixes #887
2024-06-06 11:07:57 +02:00

36 lines
1.1 KiB
Python

{
'name': 'merge bot',
'version': '1.14',
'depends': ['contacts', 'mail', 'website'],
'data': [
'security/security.xml',
'security/ir.model.access.csv',
'data/merge_cron.xml',
'models/crons/git_maintenance.xml',
'models/crons/cleanup_scratch_branches.xml',
'data/runbot_merge.pull_requests.feedback.template.csv',
'views/res_partner.xml',
'views/runbot_merge_project.xml',
'views/batch.xml',
'views/mergebot.xml',
'views/queues.xml',
'views/configuration.xml',
'views/templates.xml',
'models/project_freeze/views.xml',
'models/staging_cancel/views.xml',
],
'assets': {
'web.assets_frontend': [
'runbot_merge/static/scss/runbot_merge.scss',
],
'web.assets_backend': [
'runbot_merge/static/scss/runbot_merge_backend.scss',
'runbot_merge/static/project_freeze/index.js',
],
},
'post_load': 'enable_sentry',
'pre_init_hook': '_check_citext',
'license': 'LGPL-3',
}