Description
What would you like Renovate to be able to do?
I would like to configure renovate in my repository using a dynamically-created repository config.
- e.g
renovate.jsoncould be replaced withrenovate-config.mjsthat would be evaluated using NodeJS. - Discussion: https://github.com/renovatebot/renovate/discussions/20867
Use case
In my repository, we have branches for every minor version that we publish. e.g. 14.2.x, 14.3.x, 15.0.x. In a simplified manner, we would like Renovate to only operate on the two most highest SemVer branches. This is currently not possible to achieve via a RegExp.
There are ways to achieve it by manually disabling Renovate for these older branches, but we would like to avoid manually having to maintaining this list/landing changes in older branches.
We have a script that will tell us the most recent branches that are "still in active development" and would like to use it to configure Renovate. Also with a dynamic configuration, we can have different configurations for different semantic branches. e.g.
- main // should use active @next version of Angular
- 15.2.x // should active @latest version of Angular
- 15.1.x // no longer in active development. Would not like Renovate PRs
- 15.0.x // no longer in active development. Would not like Renovate PRs
If you have any ideas on how this should be implemented, please tell us here.
Mostly thinking of supporting a .js, .mjs, .cjs config file in a repository. Renovate would then run it via Node. It would be opt-in only for self-hosted users. The configuration file could not depend on any node_modules?
Is this a feature you are interested in implementing yourself?
Maybe