A
Etienne Deneuve
Jan 8, 2023 · 4 min read

Comment utiliser Renovate

Side view worker wearing gloves

Introduction

Dans le monde effréné du développement logiciel, rester à jour avec les dernières dépendances de packages peut être un défi redoutable. Des packages obsolètes peuvent entraîner des vulnérabilités de sécurité, des problèmes de performance et des conflits de compatibilité, entravant finalement le progrès de vos projets. C’est là que Renovate, un outil automatisé de mise à jour des dépendances, intervient pour rationaliser le processus et garantir que vos projets logiciels restent en pleine forme.

Qu’est-ce que Renovate ?

Renovate est une solution polyvalente et multiplateforme conçue pour simplifier et automatiser la gestion des dépendances dans les projets logiciels. Il répond aux besoins de différents environnements de développement et offre plusieurs avantages.

Pourquoi utiliser Renovate ?¶

  • Gestion automatisée des dépendances : Renovate automatise les mises à jour, réduisant les efforts manuels.
  • Sécurité et stabilité : Assure la sécurité et la stabilité avec des dépendances à jour.
  • Personnalisation : Adaptez Renovate aux besoins de votre projet en utilisant renovate.json.
  • Intégration des demandes de tirage : Proposez des mises à jour avec une revue de code via les PR.
  • Planification : Contrôlez les mises à jour avec une planification flexible.
  • Support multiplateforme : Fonctionne sur différentes plates-formes pour une cohérence.
  • Mises à jour soutenues par la communauté : Reste à jour avec les recommandations de la communauté.
  • Réduction de la dette technique : Des mises à jour fréquentes réduisent la dette technique.
  • Assurance de compatibilité : Évite les conflits de dépendances et les problèmes de compatibilité.
  • Flux de travail rationalisé : Concentrez-vous sur le code, pas sur la gestion manuelle des dépendances.
  • Transparence et open source : Outil transparent et flexible en open source.
  • Détection automatique des fichiers de package pertinents : Renovate identifie automatiquement les fichiers de package pertinents (tels que package.json), même dans les monoréférentiels.

Plates-formes prises en charge¶

  • GitHub (com et Enterprise Server)
  • GitLab (com et CE/EE)
  • Bitbucket Cloud
  • Bitbucket Server
  • Azure DevOps
  • AWS CodeCommit
  • Gitea et Forgejo

Intégration dans Azure DevOps

Vous pouvez suivre ces étapes pour ajouter Renovate à votre projet Azure DevOps :

1. Créez un nouveau pipeline
schedules:
- cron: '0 3 * * *'
displayName: 'Every day at 3am'
branches:
include: [main]
always: true
trigger: none
pool:
vmImage: ubuntu-latest
steps:
- task: npmAuthenticate@0
inputs:
workingFile: .npmrc
- bash: |
git config --global user.email 'bot@renovateapp.com'
git config --global user.name 'Renovate Bot'
npx --userconfig .npmrc renovate
env:
TOKEN: $(System.AccessToken)
2.Créez un fichier .npmrc dans votre dépôt (s’il n’existe pas)

Remplacez YOUR-ORG et YOUR-FEED :

Terminal window
registry=https://pkgs.dev.azure.com/YOUR-ORG/_packaging/YOUR-FEED/npm/registry/
always-auth=true
3.Créez un fichier config.js dans votre dépôt

Remplacez YOUR-ORG, YOUR-PROJECT et YOUR-REPO :

module.exports = {
platform: 'azure',
endpoint: 'https://dev.azure.com/YOUR-ORG/',
token: process.env.TOKEN,
hostRules: [
{
hostType: 'npm',
matchHost: 'pkgs.dev.azure.com',
username: 'apikey',
password: process.env.TOKEN
}
],
repositories: ['YOUR-PROJECT/YOUR-REPO']
}
4.Créez le fichier de configuration (renovate.json)
{
"extends": ["config:recommended"],
"baseBranches": ["develop"], // specifie branch to merge the pr
"reviewers": ["required:Toufik Benkhelifa"] // add required reviewers
}
5. Ajoutez des autorisations à votre agent Build Service

Assurez-vous que l’utilisateur “Project Collection Build Service (YOUR-PROJECT)” a les autorisations sur les dépôts. Dans Paramètres du projet > Dépôts > VOS-DÉPÔTS > Sécurité > Build Service de VOS-DÉPÔTS, vous devez définir cette autorisation pour autoriser :

  • Contribute
  • Contribute to pull requests
  • Create branch

Conclusion

Renovate est votre solution incontournable pour une gestion sans tracas des dépendances dans le développement logiciel. Il automatise les mises à jour, renforce la sécurité et offre des options de personnalisation, le tout en rationalisant votre flux de travail. Avec le support de différentes plates-formes et des mises à jour soutenues par la communauté, Renovate réduit la dette technique et assure la compatibilité. De plus, il est open source, transparent et capable de détecter automatiquement les fichiers de package pertinents, en faisant l’outil parfait pour maintenir vos projets en pleine forme. Alors, adoptez Renovate et simplifiez votre parcours de développement.

Azure Devops CI-CD

Articles relatifs