Napojení nástroje Renovate na GitHub repozitáře
29.09.2025
V tomto druhém článku ze série o tom jak udržovat aplikace jako nové Vám popíšu způsob jak jednoduše nastavit hlídače verzí Renovate, pokud používáte repozitáře kódu na GitHubu.
Nejvíc přímočarý způsob je vyjít přímo z Vašeho GitHub profilu. V hlavním menu najdete sekci Marketplace obsahující mimo jiné externí aplikace, které můžete se svým GitHub účtem propojit. Po vyhledání nástroje Renovate ho jediným tlačítkem „nainstalujete“ do svého GitHub účtu, vyberete na které z Vašich repozitářů má mít nástroj přístup a tím je základní nastavení téměř hotovo! Čekali jste, že to bude až tak jednoduché?
Na pozadí se přitom událo poměrně hodně věcí. V cloudu společnosti Mend.io, výrobce Renovate, Vám bylo založeno prostředí pro správu aktualizací a nastaveno automatické spouštění hlídače verzí nad Vašimi repozitáři, ke kterým jste povolili přístup. GitHub dále této cloudové instanci Renovate nastavil OAuth autorizaci a příslušná oprávnění.
Vypisovat tu seznam všech platforem, které Renovate dokáže rozeznat a dohledávat k nim aktualizace, by bylo plýtvání digitálním „papírem“. Omezím se pouze na přehled těch, které využíváme v našich frontendových a backendových aplikacích.
V repozitářích s frontendovými knihovnami a Next.js aplikacemi nám hlídač aktualizuje samotné javascriptové knihovny, na kterých náš kód závisí, a také verzi package manageru pnpm uvedenou v package.json. U backendových Spring Boot aplikací se stará o závislosti na knihovnách v Gradle skriptech i verzi Gradle jako takového.
V obou typech repozitářů se dále zaměřuje na verze všech použitých GitHub Actions, které používáme pro buildování sdílených javascriptových knihoven do balíčků i vytváření Docker image frontendových i backendových aplikací pro nasazení. U Dockerfile souborů pro tyto image hlídá verze také. Díky tomu běží naše aplikace na stále aktuálních verzích operačního systému a běhových prostředích Java i Node.js.
Ve výchozím nastavení jsou Vám nové verze hlášeny pouze v portálu Mend.io. Zde si můžete vybrat co chcete aktualizovat, nebo zapnout automatické vytváření Git větví se změnami. Nemálo ruční práce přináší fakt, že standardně je potřeba schválit každou změnu zvlášť.
Toto chování jde ovlivnit dvěma způsoby: jednak je možné slučovat změny do jedné Git větve, druhak můžete určit které změny se aplikují automaticky přímo do hlavní Git větve daného repozitáře bez schválení. K oběma těmto nastavením je však už potřeba vytvořit v repozitáři konfigurační soubor „renovate.json“, který umožňuje podrobná nastavení fungování hlídače verzí. Dalším omezením je, že obě nastavení jde provádět pouze na základě názvů knihoven nebo balíčků.
Na jeden trochu zákeřný ale poměrně snadno řešitelný problém narazíte, pokud máte některé vaše repozitáře privátní, a znich vytvořené balíčky používáte např. jako sdílené knihovny v dalších repozitářích. V případě našich sdílených javascriptových knihoven privátní balíčky ukládáme do GitHub Package registry, kde k nim je potřeba mít na rozdíl od obvyklých veřejných balíčků autorizovaný přístup. Dokumentace Renovate v tomto případě tvrdí, že v rámci aktivace Renovate přes GitHub Marketplace je povolená OAuth autorizace i do vašeho privátního GitHub Package registry a nemusíte nic dalšího nastavovat. To je ale informace řekněme neaktuální.
Ve skutečnosti musíte pro tento účel vygenerovat v GitHubu samostatný přístupový klíč typu „Personal Access Token (classic)“ s oprávněním na „read:packages“. Tento klíč je potřeba nastavit v portálu Mend.io do šifrovaných proměnných („secrets“) a také aktivovat jeho použití pro autorizaci k GitHub Package registry pomocí tzv. „Host Rule“. Pro javascriptové balíčky v něm nastavte typ pravidla na „npm“ a URL „https://npm.pkg.github.com“.
Pokud jste dočetli až sem, doufám že Vám bude toto krátké představení nástroje Renovate ve spojení s GitHubem užitečné. V příštím článku představím podrobněji další dílek naší skládačky pomáhající udržovat aplikace jako nové, a to nástroj Codemod.
Zpět