Mettre à jour les versions des piles de langage dans Azure Functions

La prise en charge d’une pile de langage donnée dans Azure Functions se limite à des versions spécifiques. À mesure que de nouvelles versions sont disponibles, vous pouvez mettre à jour vos applications pour tirer parti de leurs fonctionnalités. La prise en charge dans Functions peut également se terminer pour les versions antérieures, généralement alignées sur les chronologies de fin de support de la communauté. Pour en savoir plus, consultez l’article Stratégie de support du runtime de langage. Pour vous assurer que vos applications continuent de bénéficier du support, vous devez suivre les instructions décrites dans cet article pour les mettre à jour vers les dernières versions disponibles.

Le mode de mise à jour de votre application de fonction dépend des éléments suivants :

  • Le langage que vous utilisez pour créer vos fonctions. Veillez à choisir votre langage de programmation en haut de l’article.
  • Le système d’exploitation sur lequel votre application s’exécute dans Azure : Windows ou Linux.
  • Le plan d’hébergement.

Remarque

Cet article explique comment mettre à jour la version .NET d’une application à l’aide du modèle Worker isolé. Les applications qui s’exécutent sur des versions antérieures de .NET avec le modèle in-process peuvent être mises à jour pour cibler .NET 8 ou migrer du modèle in-process vers le modèle Worker isolé.

Préparation de la mise à jour

Avant de mettre à jour la configuration de la pile pour votre application de fonction dans Azure, vous devez effectuer ces tâches :

1. Vérifier vos fonctions localement

Assurez-vous de tester et de vérifier votre code de fonction localement sur la nouvelle version cible.

Pour mettre à jour le projet sur votre ordinateur local, procédez comme suit :

  1. Vérifiez que vous avez installé la version cible du Kit de développement logiciel (SDK) .NET.

    Si vous ciblez une version préliminaire, consultez les instructions Functions pour obtenir une préversion des versions de .NET pour vous assurer que la version est prise en charge. Des étapes supplémentaires peuvent être nécessaires pour les préversions .NET.

  2. Mettez à jour vos références vers les dernières versions de Microsoft.Azure.Functions.Worker et Microsoft.Azure.Functions.Worker.Sdk.

  3. Mettez à jour l’infrastructure cible de votre projet vers la nouvelle version. Pour les projets C#, vous devez mettre à jour l’élément <TargetFramework> dans le fichier .csproj. Consultez l’article sur les infrastructures cibles pour connaître les spécificités relatives à la version choisie.

    La modification de l’infrastructure cible de votre projet peut également nécessiter la modification de certaines parties de votre chaîne d’outils, en dehors du code du projet. Par exemple, dans VS Code, vous devrez peut-être mettre à jour le paramètre d’extension azureFunctions.deploySubpath par le biais des paramètres utilisateur ou le fichier .vscode/settings.json de votre projet. Recherchez les dépendances sur la version de l’infrastructure qui peuvent exister en dehors de votre code de projet, dans le cadre des étapes de génération ou d’un pipeline CI/CD.

  4. Effectuez les mises à jour du code de votre projet requises par la nouvelle version .NET. Consultez les notes de publication de la version pour en connaître les détails. Vous pouvez également utiliser l’Assistant Mise à niveau de .NET pour vous aider à mettre à jour votre code en réponse aux modifications apportées aux versions principales.

Une fois ces modifications effectuées, régénérez votre projet et testez-le pour vérifier que votre application s’exécute comme prévu.

2. Passer au runtime Functions le plus récent

Vérifiez que votre application de fonction s’exécute sur la dernière version du runtime Functions (version 4.x). Vous pouvez déterminer la version du runtime dans le Portail Azure ou à l’aide d’Azure CLI.

Utilisez cette procédure pour déterminer la version de votre runtime Functions :

  1. Dans le Portail Azure, recherchez votre application de fonction, puis sélectionnez Configuration sur le côté gauche sous Paramètres.

  2. Sélectionnez l’onglet Paramètres du runtime de la fonction et vérifiez la valeur Version de runtime pour voir si votre application de fonction s’exécute sur la version 4.x du runtime Functions (~4).

    Capture d’écran montrant comment afficher la version de runtime Functions pour votre application dans le Portail Azure.

Si vous devez d’abord mettre à jour votre application de fonction vers la version 4.x, consultez Migrer des applications d’Azure Functions version 1.x vers la version 4.x ou Migrer des applications d’Azure Functions version 3.x vers la version 4.x. Vous devez suivre les instructions de ces articles sans vous contenter de modifier le paramètre FUNCTIONS_EXTENSION_VERSION.

Publier des mises à jour d’application

Si vous avez mis à jour votre application pour qu’elle s’exécute correctement sur la nouvelle version, publiez les mises à jour de l’application avant de mettre à jour la configuration de la pile pour votre application de fonction.

Conseil

Pour simplifier le processus de mise à jour, réduire les temps d’arrêt de vos fonctions et fournir un potentiel de restauration, vous devez publier votre application mise à jour dans un emplacement de préproduction. Pour plus d’informations, consultez l’article Emplacements de déploiement Azure Functions.

Lorsque vous publiez votre application mise à jour dans un emplacement de préproduction, veillez à suivre les instructions de mise à jour spécifiques de l’emplacement dans le reste de cet article. Vous échangerez plus tard l’emplacement de préproduction mis à jour en production.

Mettre à jour la configuration de la pile

La façon dont vous mettez à jour la configuration de la pile varie selon que vous l’exécutez sur Windows ou sur Linux dans Azure.

Lorsque vous utilisez un emplacement de préproduction, veillez à cibler vos mises à jour vers l’emplacement approprié.

Effectuez les étapes suivantes pour mettre à jour la version de Java :

  1. Dans le Portail Azure, recherchez votre application de fonction et sélectionnez Configuration sur le côté gauche. Lorsque vous utilisez un emplacement de préproduction, veillez à sélectionner d’abord l’emplacement spécifique.

  2. Dans l’onglet Paramètres généraux, mettez à jour la version de Java vers la version souhaitée.

    Capture d’écran montrant comment définir la version Java souhaitée pour une application de fonction dans le Portail Azure.

  3. Sélectionnez Enregistrer, puis lorsque vous êtes averti d’un redémarrage, sélectionnez Continuer.

Pour mettre à jour la version .NET, procédez comme suit :

  1. Dans le Portail Azure, recherchez votre application de fonction et sélectionnez Configuration sur le côté gauche. Lorsque vous utilisez un emplacement de préproduction, veillez à sélectionner d’abord l’emplacement spécifique.

  2. Dans l’onglet Paramètres généraux, mettez à jour la version .NET vers la version souhaitée.

    Capture d’écran montrant comment définir la version .NET souhaitée pour une application de fonction dans le portail Azure.

  3. Sélectionnez Enregistrer, puis lorsque vous êtes averti d’un redémarrage, sélectionnez Continuer.

Pour mettre à jour la version Node.js, procédez comme suit :

  1. Dans le Portail Azure, recherchez votre application de fonction et sélectionnez Configuration sur le côté gauche. Lorsque vous utilisez un emplacement de préproduction, veillez à sélectionner d’abord l’emplacement spécifique.

  2. Dans l’onglet Paramètres généraux, mettez à jour la version Node.js vers la version souhaitée.

    Capture d’écran montrant comment définir la version Node.js souhaitée pour une application de fonction dans le portail Azure.

  3. Sélectionnez Enregistrer, puis lorsque vous êtes averti d’un redémarrage, sélectionnez Continuer. Cette modification met à jour le paramètre d’application WEBSITE_NODE_DEFAULT_VERSION.

Pour mettre à jour la version de PowerShell, procédez comme suit :

  1. Dans le Portail Azure, recherchez votre application de fonction et sélectionnez Configuration sur le côté gauche. Lorsque vous utilisez un emplacement de préproduction, veillez à sélectionner d’abord l’emplacement spécifique.

  2. Dans l’onglet Paramètres généraux, mettez à jour la version .NET vers la version souhaitée.

    Capture d’écran montrant comment définir la version PowerShell souhaitée pour une application de fonction dans le portail Azure.

  3. Sélectionnez Enregistrer, puis lorsque vous êtes averti d’un redémarrage, sélectionnez Continuer.

Les applications Python ne sont pas prises en charge sur Windows. Sélectionnez l’onglet Linux à la place.

Votre application de fonction redémarre après que vous avez mis à jour la version.

Permuter des emplacements

Si vous effectuez le déploiement du projet de code et mettez à jour les paramètres dans un emplacement de préproduction, vous devez échanger l’emplacement de préproduction en production. Pour plus d’informations, consultez la section Permuter des emplacements.

Étapes suivantes