Closed frbuceta closed 3 years ago
Thank you for starting this discussion, @frbuceta.
Based on my limited knowledge of RenovateBot, I don't see how config presets could be used to control the way how LoopBack dependencies are updated by RenovateBot. In my understanding, these presets typically configure paths & modules to ignore, range strategy, lock file maintenance, and so on - see https://github.com/strongloop/loopback-next/blob/master/.renovaterc.json
Personally, if my project was depending on LoopBack 4, then I would want RenovateBot to open a single pull request to update all LB dependencies together. This can be configured via package groups, see e.g. how we are doing it here:
Apparently, such configuration can be contributed to RenovateBot as a monorepo preset, see https://docs.renovatebot.com/presets-monorepo/
Maybe that would be a good first step?
Anyhow, I don't want to discourage you (or anybody else) from researching different approaches. As I said, my knowledge of RenovateBot is limited and thus the opinions presented above may be wrong.
Currently, I haven't had any issue with using Renovate to update lb4 project to the latest versions as new package versions are published together.
However, I think it may be beneficial for those who don't want to update to the latest CLI version yet (e.g. devops workflow is not updated yet).
I think integration with Renovate is a good idea and could be used as a drop-in replacement for lb4 update
for those who prefer consolidating everything to Renovate.
To extend @frbuceta's idea, I would think that the Renovate config package version would need to be in sync with the CLI for compatibility in some way.
All-in-all, I think the new package should closely replicate the behaviour of lb4 update
so that users have the flexibility of switching between either methods.
This issue has been marked stale because it has not seen activity within six months. If you believe this to be in error, please contact one of the code owners, listed in the CODEOWNERS
file at the top-level of this repository. This issue will be closed within 30 days of being stale.
Suggestion
Today I come to propose incorporating a new loopback package (for loopback 3 and 4).
In my day to day I use Renovate (if I'm not confused, in loopback-next it is also used) and as I have seen that @raymondfeng has incorporated in the CLI the option to update the project, At this point, I want to go a little further and take advantage of the full power of Renovate.
To block Renovate from updating packages without control, I propose to create a package with settings that are updated every time loopback packages do.
Here we can see a bit how to create this package --> https://docs.renovatebot.com/config-presets/
Use Cases
Update dependencies with @renovate-bot
Acceptance criteria
TBD - will be filled by the team.