thoth-station / kebechet

I'm Kebechet bot, goddess of freshness - I will keep your source code fresh and up-to-date
24 stars 20 forks source link

[5pt] An option to configure different managers per overlay #1126

Closed codificat closed 1 year ago

codificat commented 2 years ago

Problem statement

A .thoth.yaml configuration file supports overlays, which allows e.g. different configurations for thoth adviser (different runtimes, different recommendation types). However, the managers configuration section is common to all the overlays.

I would like to be able to have different Kebechet manager configurations in different overlays, so I can choose to e.g. get the benefits of thoth advice in one overlay but just use the pipenv-based update manager for another.

The fact that there is a single manager configuration for the whole repo means that enabling a certain manager is an "all or nothing" configuration option. If I have 10 overlays and 1 of them can not work with thoth-advise manager, then I can not use thoth-advise in the other 9 overlays either.

High-level Goals

To be able to configure different managers / options per overlay.

Proposal description

Some options to implement this:

  1. If .thoth.yaml has an overlays_dir configured, then the managers configuration section contains one entry per overlay. This approach would be consistent with how thoth / thamos configuration looks like, but it might introduce too much redundancy
  2. Allow individual overlays to override the global configuration, by having the same configuration structure as now but adding the possibility to introduce overlay-specific overrides
  3. Add allow and disallow to each manager's configuration options, where the user can specify which repos each manager is (dis)allowed to act on.

Alternatives

Keep it as is. It works, but it is less flexible.

Additional context

Acceptance Criteria

codificat commented 2 years ago

/sig user-experience

Gkrumbach07 commented 1 year ago

Suggested Config

codificat commented 1 year ago

/wg cnbi