Renovate Bot - To keep your dependencies up to date.

 


I am a software engineer in ExoReaction and had the opportunity of configuring and use Renovate for our projects in our repositiores (Quadim, Cantara, entraeiendom)

It hasn't happened to your project that over time its dependencies are outdated.

Well, I'll tell you that there is an excellent tool to have your dependencies updated and it gives you the opportunity to auto-merge or generate PR for a major version and decide whether to accept it or not. It amazing tool is Renovate.

The best part is that renovate supports:

  • node projects
  • javascript projects
  • java projects. (Maven, Gradle)
  • golang projects
  • etc



The most surprising thing is that it is FREE. That is, you can use it on Github, Gitlab, and Gitea without paying anything else.

I will make this article based on Github and using renovate app (NO self-host).


1. First. locate the option to install the tool for Github.



2. Second. You will be redirected to its informative page



3. Third. You need to configure the GitHub account (choose one)



4. Fourth. You will see that it is already integrated into your account, but you need to tell it if you want it to be enabled for all your repositories or just for some. You will come to this page if you later want to add more reps.


In this section, you have to choose if you want it to be enabled for all repositories or just some.



5. Once you have enabled Renovate on a repository, you will get a "Configure Renovate" Pull Request looking something like this


The "Configure Renovate" PR will include a renovate.json file in the root directory, with suggested default settings


6. For renovatebot to do its magic, you have to configure a renovate.json file u other alternativas as the documentation says.



The content of it file is very simple:

{

  "extends": [

    "config:base"

  ]

}


7. After this, your repo will receive several pull requests for dependencies that are already out of date.



The information of its PR has many details for taking a good decision of accepting or not the update.


And if all the status checks are passed, the PR is ready to merge.



Amazing or not?


BE CAREFUL: He can become the best programmer in your team that releases more PRs than anyone hahaha.


8. You can further customize your renovate.json file, but I recommend following this article to get the most out of it.

First: Introduction to Renovate Bot

Second: https://www.augmentedmind.de/2021/07/25/renovate-bot-cheat-sheet/


The source code of it project is on Github. A good place to visit. 

The tab de Discussions is the correct place to find help and support for the same maintainers. 


Enjoy!


In the next article, I will write about "How to centralize your configuration for many repositories" (Be patient and read the documentation first, because they are not so friendly if they realize that you haven't even read the documentation hahaha. I am kidding).


Joe



Share: