<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Migration | The .NET Blog</title><link>https://thedotnetblog.com/fr/tags/migration/</link><description>Articles, tutorials and insights from the .NET community.</description><generator>Hugo</generator><language>fr</language><managingEditor>@thedotnetblog (The .NET Blog)</managingEditor><webMaster>@thedotnetblog</webMaster><lastBuildDate>Tue, 05 May 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://thedotnetblog.com/fr/tags/migration/index.xml" rel="self" type="application/rss+xml"/><item><title>Supprimer le Travail Répétitif de la Migration avec l'Agentic Platform Engineering</title><link>https://thedotnetblog.com/fr/news/emiliano-montesdeoca/agentic-platform-engineering-migration-automation/</link><pubDate>Tue, 05 May 2026 00:00:00 +0000</pubDate><author>Emiliano Montesdeoca</author><guid>https://thedotnetblog.com/fr/news/emiliano-montesdeoca/agentic-platform-engineering-migration-automation/</guid><description>Git-Ape présente la migration d'un déploiement Terraform AWS réel vers Azure Bicep — en extrayant l'intention de déploiement et en remappant l'architecture plutôt qu'en effectuant une conversion syntaxique 1:1.</description><content:encoded>&lt;p&gt;&lt;em&gt;Ce post a été traduit automatiquement. Pour la version originale, &lt;a href="https://thedotnetblog.com/fr/news/emiliano-montesdeoca/agentic-platform-engineering-migration-automation/"&gt;cliquez ici&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://devblogs.microsoft.com/all-things-azure/removing-the-monkey-work-of-migration-using-agentic-platform-engineering/"&gt;Removing the Monkey Work of Migration with Agentic Platform Engineering&lt;/a&gt; — une présentation de Git-Ape (outil git d&amp;rsquo;ingénierie de plateforme agentique) qui migre un vrai dépôt Terraform AWS vers Azure, en se concentrant sur l&amp;rsquo;extraction d&amp;rsquo;intention plutôt que sur une conversion ligne par ligne.&lt;/p&gt;
&lt;h2 id="lentrée--contoso-migration"&gt;L&amp;rsquo;entrée : contoso-migration&lt;/h2&gt;
&lt;p&gt;La source est un vrai projet Terraform (&lt;code&gt;contoso-migration&lt;/code&gt;) qui déploie une application Next.js sur AWS — EC2 pour le calcul, ALB pour l&amp;rsquo;équilibrage de charge, S3 pour les artefacts, et des clés IAM pour l&amp;rsquo;identité. Coût : ~34 $/mois. L&amp;rsquo;objectif n&amp;rsquo;est pas de reproduire la même infrastructure sur Azure ; c&amp;rsquo;est de comprendre ce que le déploiement essaie réellement de faire et de le reconstruire avec des services natifs Azure.&lt;/p&gt;
&lt;h2 id="étape-1--validation-et-authentification"&gt;Étape 1 : Validation et authentification&lt;/h2&gt;
&lt;p&gt;Git-Ape commence par valider tous les outils CLI requis — &lt;code&gt;az&lt;/code&gt;, &lt;code&gt;aws&lt;/code&gt;, &lt;code&gt;gh&lt;/code&gt;, &lt;code&gt;jq&lt;/code&gt;, &lt;code&gt;git&lt;/code&gt; — et en confirmant les sessions d&amp;rsquo;authentification actives avant de toucher quoi que ce soit. Pas d&amp;rsquo;exécutions partielles.&lt;/p&gt;
&lt;h2 id="étape-2--extraction-dintention"&gt;Étape 2 : Extraction d&amp;rsquo;intention&lt;/h2&gt;
&lt;p&gt;L&amp;rsquo;agent lit l&amp;rsquo;intégralité du dépôt source via l&amp;rsquo;API GitHub et extrait l&amp;rsquo;intention de déploiement : runtime (Node.js), type de calcul, modèle d&amp;rsquo;ingress, gestion des artefacts, modèle d&amp;rsquo;identité, réseau et surveillance. C&amp;rsquo;est l&amp;rsquo;étape clé — elle construit un modèle sémantique de ce que fait le déploiement, pas quels mots-clés Terraform il utilise.&lt;/p&gt;
&lt;h2 id="étape-3--correspondance-de-services"&gt;Étape 3 : Correspondance de services&lt;/h2&gt;
&lt;p&gt;Les services AWS sont mappés vers leurs équivalents Azure :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;EC2 → App Service (Linux, Node 20 LTS)&lt;/li&gt;
&lt;li&gt;ALB → Équilibrage de charge intégré d&amp;rsquo;App Service&lt;/li&gt;
&lt;li&gt;Rôles/clés IAM → Managed Identity&lt;/li&gt;
&lt;li&gt;Terraform → Bicep + GitHub Actions&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="étape-4--agent-de-critique"&gt;Étape 4 : Agent de critique&lt;/h2&gt;
&lt;p&gt;Avant de générer la sortie, un agent de critique s&amp;rsquo;exécute et détecte deux problèmes bloquants :&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Anti-modèle de build au démarrage&lt;/strong&gt; — le Terraform original exécutait &lt;code&gt;npm install &amp;amp;&amp;amp; npm run build&lt;/code&gt; sur EC2 au démarrage. Correction : construire dans CI, déployer un artefact prêt.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Blob Storage inutile&lt;/strong&gt; — S3 était utilisé pour la mise en attente d&amp;rsquo;artefacts qui pouvait être éliminé avec un CI/CD approprié. L&amp;rsquo;agent de critique l&amp;rsquo;a supprimé entièrement.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="étape-5--sortie-générée"&gt;Étape 5 : Sortie générée&lt;/h2&gt;
&lt;p&gt;Le résultat est ~80 lignes de Bicep au lieu des 200+ lignes originales de Terraform. L&amp;rsquo;agent a créé un nouveau dépôt GitHub avec &lt;code&gt;infra/main.bicep&lt;/code&gt; et &lt;code&gt;.github/workflows/deploy.yml&lt;/code&gt; et supprimé tous les fichiers spécifiques à AWS.&lt;/p&gt;
&lt;h2 id="comparaison-de-la-posture-de-sécurité"&gt;Comparaison de la posture de sécurité&lt;/h2&gt;
&lt;p&gt;La migration a également produit une amélioration significative de la sécurité :&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;AWS original&lt;/th&gt;
&lt;th&gt;Sortie Azure&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;HTTP uniquement&lt;/td&gt;
&lt;td&gt;HTTPS uniquement, TLS 1.2&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;SSH ouvert à 0.0.0.0/0&lt;/td&gt;
&lt;td&gt;Pas d&amp;rsquo;exposition SSH&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Clés d&amp;rsquo;accès IAM&lt;/td&gt;
&lt;td&gt;OIDC + Managed Identity&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Pas de surveillance&lt;/td&gt;
&lt;td&gt;Application Insights&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Coût : ~13 $/mois vs les 34 $/mois originaux.&lt;/p&gt;
&lt;h2 id="ce-qui-le-distingue-dun-convertisseur-de-syntaxe"&gt;Ce qui le distingue d&amp;rsquo;un convertisseur de syntaxe&lt;/h2&gt;
&lt;p&gt;L&amp;rsquo;étape de l&amp;rsquo;agent de critique est ce qui sépare ceci d&amp;rsquo;une traduction mécanique. Il a détecté des modèles qui auraient fonctionné sur AWS mais seraient incorrects sur Azure — et les a corrigés plutôt que de les répliquer. La sortie n&amp;rsquo;est pas &amp;ldquo;AWS en syntaxe Azure&amp;rdquo; ; c&amp;rsquo;est un déploiement natif Azure qui atteint le même objectif plus proprement.&lt;/p&gt;
&lt;p&gt;Consultez le &lt;a href="https://devblogs.microsoft.com/all-things-azure/removing-the-monkey-work-of-migration-using-agentic-platform-engineering/"&gt;guide complet&lt;/a&gt; pour la trace complète de l&amp;rsquo;agent et les fichiers générés.&lt;/p&gt;</content:encoded></item><item><title>L'évaluation de modernisation de GitHub Copilot est le meilleur outil de migration que vous n'utilisez pas encore</title><link>https://thedotnetblog.com/fr/news/emiliano-montesdeoca/dotnet-modernization-assessment-github-copilot/</link><pubDate>Fri, 10 Apr 2026 00:00:00 +0000</pubDate><author>Emiliano Montesdeoca</author><guid>https://thedotnetblog.com/fr/news/emiliano-montesdeoca/dotnet-modernization-assessment-github-copilot/</guid><description>L'extension de modernisation de GitHub Copilot ne se contente pas de suggérer des modifications de code — elle produit une évaluation complète de migration avec des issues actionnables, des comparaisons de cibles Azure et un workflow collaboratif. Voici pourquoi le document d'évaluation est la clé de tout.</description><content:encoded>&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;Cet article a été traduit automatiquement. Pour la version originale, &lt;a href="https://thedotnetblog.com/fr/news/emiliano-montesdeoca/dotnet-modernization-assessment-github-copilot/"&gt;cliquez ici&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Migrer une application legacy .NET Framework vers .NET moderne est l&amp;rsquo;une de ces tâches que tout le monde sait devoir faire mais que personne ne veut commencer. Ce n&amp;rsquo;est jamais juste « changer le framework cible ». Ce sont des API qui ont disparu, des packages qui n&amp;rsquo;existent plus, des modèles d&amp;rsquo;hébergement qui fonctionnent totalement différemment, et un million de petites décisions sur ce qu&amp;rsquo;il faut containeriser, réécrire ou laisser tel quel.&lt;/p&gt;
&lt;p&gt;Jeffrey Fritz vient de publier une &lt;a href="https://devblogs.microsoft.com/dotnet/your-migrations-source-of-truth-the-modernization-assessment/"&gt;plongée approfondie dans l&amp;rsquo;évaluation de modernisation de GitHub Copilot&lt;/a&gt;, et honnêtement ? C&amp;rsquo;est le meilleur outillage de migration que j&amp;rsquo;ai vu pour .NET. Pas à cause de la génération de code — c&amp;rsquo;est devenu standard maintenant. À cause du document d&amp;rsquo;évaluation qu&amp;rsquo;il produit.&lt;/p&gt;
&lt;h2 id="ce-nest-pas-quun-moteur-de-suggestions-de-code"&gt;Ce n&amp;rsquo;est pas qu&amp;rsquo;un moteur de suggestions de code&lt;/h2&gt;
&lt;p&gt;L&amp;rsquo;extension VS Code suit un modèle &lt;strong&gt;Évaluer → Planifier → Exécuter&lt;/strong&gt;. La phase d&amp;rsquo;évaluation analyse l&amp;rsquo;intégralité de votre codebase et produit un document structuré qui capture tout : ce qui doit changer, quelles ressources Azure provisionner, quel modèle de déploiement utiliser. Tout en aval — infrastructure as code, containerisation, manifestes de déploiement — découle de ce que l&amp;rsquo;évaluation trouve.&lt;/p&gt;
&lt;p&gt;L&amp;rsquo;évaluation est stockée sous &lt;code&gt;.github/modernize/assessment/&lt;/code&gt; dans votre projet. Chaque exécution produit un rapport indépendant, vous construisez ainsi un historique et pouvez suivre l&amp;rsquo;évolution de votre posture de migration au fur et à mesure que vous corrigez les issues.&lt;/p&gt;
&lt;h2 id="deux-façons-de-commencer"&gt;Deux façons de commencer&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Évaluation Recommandée&lt;/strong&gt; — la voie rapide. Choisissez parmi des domaines curatés (Mise à jour Java/.NET, Cloud Readiness, Sécurité) et obtenez des résultats significatifs sans toucher à la configuration. Idéal pour un premier regard sur l&amp;rsquo;état de votre application.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Évaluation Personnalisée&lt;/strong&gt; — la voie ciblée. Configurez exactement ce qu&amp;rsquo;il faut analyser : compute cible (App Service, AKS, Container Apps), OS cible, analyse de containerisation. Choisissez plusieurs cibles Azure pour comparer les approches de migration côte à côte.&lt;/p&gt;
&lt;p&gt;Cette vue de comparaison est véritablement utile. Une app avec 3 issues obligatoires pour App Service pourrait en avoir 7 pour AKS. Voir les deux aide à prendre la décision d&amp;rsquo;hébergement avant de s&amp;rsquo;engager sur un chemin de migration.&lt;/p&gt;
&lt;h2 id="le-détail-des-issues-est-actionnable"&gt;Le détail des issues est actionnable&lt;/h2&gt;
&lt;p&gt;Chaque issue est accompagné d&amp;rsquo;un niveau de criticité :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Obligatoire&lt;/strong&gt; — doit être corrigé sinon la migration échoue&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Potentiel&lt;/strong&gt; — pourrait impacter la migration, nécessite un jugement humain&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Optionnel&lt;/strong&gt; — améliorations recommandées, ne bloque pas la migration&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Et chaque issue renvoie aux fichiers affectés et numéros de lignes, fournit une description détaillée de ce qui ne va pas et pourquoi c&amp;rsquo;est important pour votre plateforme cible, donne des étapes concrètes de remédiation (pas juste « corrigez ceci ») et inclut des liens vers la documentation officielle.&lt;/p&gt;
&lt;p&gt;Vous pouvez confier des issues individuelles à des développeurs et ils ont tout ce dont ils ont besoin pour agir. C&amp;rsquo;est la différence entre un outil qui vous dit « il y a un problème » et un qui vous dit comment le résoudre.&lt;/p&gt;
&lt;h2 id="les-chemins-de-mise-à-jour-couverts"&gt;Les chemins de mise à jour couverts&lt;/h2&gt;
&lt;p&gt;Pour .NET spécifiquement :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;.NET Framework → .NET 10&lt;/li&gt;
&lt;li&gt;ASP.NET → ASP.NET Core&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Chaque chemin de mise à jour a des règles de détection qui savent quelles API ont été supprimées, quels patterns n&amp;rsquo;ont pas d&amp;rsquo;équivalent direct et quels problèmes de sécurité nécessitent une attention particulière.&lt;/p&gt;
&lt;p&gt;Pour les équipes gérant plusieurs applications, il y a aussi un CLI qui supporte les évaluations batch multi-repo — clonez tous les repos, évaluez-les tous, obtenez des rapports par application plus une vue agrégée du portfolio.&lt;/p&gt;
&lt;h2 id="mon-avis"&gt;Mon avis&lt;/h2&gt;
&lt;p&gt;Si vous êtes assis sur des applications legacy .NET Framework (et soyons honnêtes, la plupart des équipes enterprise le sont), c&amp;rsquo;est &lt;em&gt;l&amp;rsquo;outil&lt;/em&gt; par lequel commencer. Le document d&amp;rsquo;évaluation seul vaut le temps — il transforme un vague « on devrait moderniser » en une liste concrète et priorisée d&amp;rsquo;éléments de travail avec des chemins clairs vers l&amp;rsquo;avant.&lt;/p&gt;
&lt;p&gt;Le workflow collaboratif est malin aussi : exportez les évaluations, partagez-les avec votre équipe, importez-les sans relancer. Revues d&amp;rsquo;architecture où les décideurs ne sont pas ceux qui exécutent les outils ? Couvert.&lt;/p&gt;
&lt;h2 id="pour-conclure"&gt;Pour conclure&lt;/h2&gt;
&lt;p&gt;L&amp;rsquo;évaluation de modernisation de GitHub Copilot transforme la migration .NET d&amp;rsquo;un projet effrayant et indéfini en un processus structuré et traçable. Commencez avec une évaluation recommandée pour voir où vous en êtes, puis utilisez des évaluations personnalisées pour comparer les cibles Azure et construire votre plan de migration.&lt;/p&gt;
&lt;p&gt;Lisez le &lt;a href="https://devblogs.microsoft.com/dotnet/your-migrations-source-of-truth-the-modernization-assessment/"&gt;walkthrough complet&lt;/a&gt; et récupérez l&amp;rsquo;&lt;a href="https://aka.ms/ghcp-appmod/vscode-ext"&gt;extension VS Code&lt;/a&gt; pour l&amp;rsquo;essayer sur votre propre codebase.&lt;/p&gt;</content:encoded></item></channel></rss>