arrow_back

Développer et déployer des fonctions Cloud Run

Accédez à plus de 700 ateliers et cours

Développer et déployer des fonctions Cloud Run

Atelier 45 minutes universal_currency_alt 5 crédits show_chart Débutant
info Cet atelier peut intégrer des outils d'IA pour vous accompagner dans votre apprentissage.
Accédez à plus de 700 ateliers et cours

Présentation

Cloud Run Functions est la dernière version de Google Cloud Run Functions, l'offre Functions as a Service de Google Cloud. Cette version est fournie avec un ensemble de fonctionnalités avancées, et optimisée par Cloud Run et Eventarc. Elle vous offre un contrôle plus avancé des performances et de l'évolutivité, ainsi qu'un contrôle accru sur l'environnement d'exécution des fonctions et les déclencheurs associés à plus de 90 sources d'événements.

Dans cet atelier, vous allez créer des fonctions Cloud Run qui répondent aux requêtes HTTP, ainsi que des fonctions basées sur des événements déclenchées par des événements Cloud Storage. Vous allez également déployer plusieurs révisions d'une fonction Cloud Run et explorer de nouveaux paramètres.

Nouveautés

Cette nouvelle version de Cloud Run Functions améliore l'expérience FaaS fournie par Cloud Run, Cloud Build, Artifact Registry et Eventarc.

  • Traitement allongé des requêtes : exécutez vos fonctions Cloud Run au-delà de la durée par défaut de cinq minutes. Cela facilite l'exécution de charges de travail de requêtes plus longues, comme le traitement de grands flux de données depuis Cloud Storage ou BigQuery. Pour les fonctions HTTP, la durée peut aller jusqu'à 60 minutes. Pour les fonctions basées sur des événements, elle peut atteindre jusqu'à 10 minutes.
  • Instances plus volumineuses : bénéficiez de 16 Go de RAM et de 4 vCPU (processeurs virtuels) sur Cloud Run Functions. Cela vous permet d'utiliser des charges de travail en mémoire exigeantes en ressources de calcul et favorise le traitement en parallèle.
  • Simultanéité : traitez jusqu'à 1 000 requêtes simultanées avec une seule instance de fonction, ce qui réduit les démarrages à froid et améliore la latence lors du scaling.
  • Nombre minimal d'instances : fournissez des instances préalablement démarrées pour réduire les démarrages à froid et assurez-vous que le temps d'amorçage de votre application n'affecte pas ses performances.
  • Répartition du trafic : prenez en charge plusieurs versions de vos fonctions, répartissez le trafic entre différentes versions et effectuez un rollback de votre fonction vers une version précédente.

Objectifs

Au cours de cet atelier, vous allez :

  • écrire une fonction qui répond aux requêtes HTTP, puis la déployer à l'aide de la console Google Cloud ;
  • écrire une fonction qui répond aux événements Cloud Storage, puis la déployer depuis votre environnement Cloud Shell local ;
  • écrire des tests unitaires pour votre fonction et tester la fonction localement ;
  • déployer plusieurs révisions d'une fonction Cloud Run à l'aide de la console Google Cloud ;
  • tester la dernière révision de votre fonction et vérifier qu'elle fonctionne comme prévu.

Préparation

Pour chaque atelier, nous vous attribuons un nouveau projet Google Cloud et un nouvel ensemble de ressources pour une durée déterminée, sans frais.

  1. Connectez-vous à Qwiklabs dans une fenêtre de navigation privée.

  2. Vérifiez le temps imparti pour l'atelier (par exemple : 01:15:00) : vous devez pouvoir le terminer dans ce délai.
    Une fois l'atelier lancé, vous ne pouvez pas le mettre en pause. Si nécessaire, vous pourrez le redémarrer, mais vous devrez tout reprendre depuis le début.

  3. Lorsque vous êtes prêt, cliquez sur Démarrer l'atelier.

  4. Notez vos identifiants pour l'atelier (Nom d'utilisateur et Mot de passe). Ils vous serviront à vous connecter à Google Cloud Console.

  5. Cliquez sur Ouvrir la console Google.

  6. Cliquez sur Utiliser un autre compte, puis copiez-collez les identifiants de cet atelier lorsque vous y êtes invité.
    Si vous utilisez d'autres identifiants, des messages d'erreur s'afficheront ou des frais seront appliqués.

  7. Acceptez les conditions d'utilisation et ignorez la page concernant les ressources de récupération des données.

Activer Google Cloud Shell

Google Cloud Shell est une machine virtuelle qui contient de nombreux outils pour les développeurs. Elle comprend un répertoire d'accueil persistant de 5 Go et s'exécute sur Google Cloud.

Google Cloud Shell vous permet d'accéder à vos ressources Google Cloud grâce à une ligne de commande.

  1. Dans la barre d'outils située en haut à droite dans la console Cloud, cliquez sur le bouton "Ouvrir Cloud Shell".

    Icône Cloud Shell encadrée

  2. Cliquez sur Continuer.

Le provisionnement et la connexion à l'environnement prennent quelques instants. Une fois connecté, vous êtes en principe authentifié et le projet est défini sur votre ID_PROJET. Par exemple :

ID de projet mis en évidence dans le terminal Cloud Shell

gcloud est l'outil de ligne de commande pour Google Cloud. Il est préinstallé sur Cloud Shell et permet la complétion par tabulation.

  • Vous pouvez lister les noms des comptes actifs à l'aide de cette commande :
gcloud auth list

Résultat :

Credentialed accounts: - @.com (active)

Exemple de résultat :

Credentialed accounts: - google1623327_student@qwiklabs.net
  • Vous pouvez lister les ID de projet à l'aide de cette commande :
gcloud config list project

Résultat :

[core] project =

Exemple de résultat :

[core] project = qwiklabs-gcp-44776a13dea667a6 Remarque : Pour consulter la documentation complète sur gcloud, accédez au guide de présentation de la gcloud CLI.

Tâche 1 : Activer les API

Avant de créer des fonctions Cloud Run, vous devez activer les API appropriées.

  1. Connectez-vous à la console Google Cloud avec les identifiants qui vous ont été attribués pour cet atelier et ouvrez la fenêtre du terminal Cloud Shell.

  2. Exécutez les commandes suivantes dans Cloud Shell pour définir les variables d'environnement PROJECT_ID et REGION :

    PROJECT_ID=$(gcloud config get-value project) REGION={{{project_0.default_region|set at lab start}}}
  3. Exécutez la commande suivante pour activer toutes les API de service nécessaires.

    gcloud services enable \ artifactregistry.googleapis.com \ cloudfunctions.googleapis.com \ cloudbuild.googleapis.com \ eventarc.googleapis.com \ run.googleapis.com \ logging.googleapis.com \ storage.googleapis.com \ pubsub.googleapis.com
  4. Cliquez sur Authorize (Autoriser) si vous y êtes invité.

Tâche 2 : Créer une fonction HTTP

Pour la première fonction, vous allez créer une fonction Node.js authentifiée qui répond aux requêtes HTTP pour convertir une valeur de température exprimée en degrés Fahrenheit en degrés Celsius, et renvoyer la valeur de température convertie.

Créer la fonction

  1. Pour accéder aux fonctions Cloud Run, dans le menu de navigation (Icône du menu de navigation), cliquez sur Fonctions Cloud Run.

    Remarque : Si l'option "Fonctions Cloud Run" n'apparaît pas dans le menu de navigation, cliquez sur "Afficher tous les produits". Faites défiler la page jusqu'à la section "Sans serveur", cliquez sur l'icône en forme de punaise à côté de "Fonctions Cloud Run", puis cliquez sur "Fonctions Cloud Run".

    Vous êtes redirigé vers Cloud Run dans la console.

  2. Cliquez sur Écrire une fonction.

  3. Dans le champ Nom du service, saisissez temperature-converter.

  4. Dans la liste Région, sélectionnez la région .

  5. Sous Authentification, sélectionnez Exiger l'authentification.

  6. Faites défiler la page vers le bas, puis développez Conteneur(s), volumes, mise en réseau et sécurité.

  7. Sous Scaling de révision, saisissez 1 comme nombre maximal d'instances.

  8. Conservez les autres paramètres par défaut, puis cliquez sur Créer.

  9. Notre fonction sera implémentée dans Node.js. Dans l'onglet Source, cliquez sur l'icône de modification à côté de l'option "Image de base", sélectionnez la dernière version de l'environnement d'exécution du langage Node.js, puis cliquez sur Enregistrer.

  10. Dans le champ Point d'entrée de la fonction, saisissez convertTemp.

  11. Dans l'éditeur intégré, remplacez tous les exemples de code existants par le code suivant dans le fichier index.js :

    const functions = require('@google-cloud/functions-framework'); functions.http('convertTemp', (req, res) => { var dirn = req.query.convert; var ctemp = (req.query.temp - 32) * 5/9; var target_unit = 'Celsius'; if (req.query.temp === undefined) { res.status(400); res.send('Temperature value not supplied in request.'); } if (dirn === undefined) dirn = process.env.TEMP_CONVERT_TO; if (dirn === 'ctof') { ctemp = (req.query.temp * 9/5) + 32; target_unit = 'Fahrenheit'; } res.send(`Temperature in ${target_unit} is: ${ctemp.toFixed(2)}.`); });

    Il s'agit d'une fonction HTTP simple en Node.js qui convertit une valeur de température en degrés Fahrenheit ou Celsius transmise dans la requête et répond avec la valeur convertie.

    Le framework des fonctions est une bibliothèque et un framework FaaS (Functions as a Service) Open Source. Il vous permet d'écrire des fonctions légères s'exécutant dans différents environnements, y compris Cloud Run Functions, votre ordinateur de développement local et Cloud Run.

    Pour en savoir plus, consultez la documentation sur le framework des fonctions.

Déployer et tester la fonction

  1. Pour déployer la fonction, cliquez sur Enregistrer et redéployer. Attendez que Cloud Build et le service Cloud Run sous-jacent soient créés.

    Une fois la fonction déployée, une coche verte s'affiche à côté de son nom sur la page d'informations sur les fonctions.

    vérifier que la fonction a été déployée

  2. Dans Cloud Shell, récupérez l'URI HTTP de la fonction et stockez-le dans une variable d'environnement :

    FUNCTION_URI=$(gcloud run services describe temperature-converter --region $REGION --format 'value(status.url)'); echo $FUNCTION_URI
  3. Dans Cloud Shell, testez la fonction avec la commande suivante :

    curl -H "Authorization: bearer $(gcloud auth print-identity-token)" "${FUNCTION_URI}?temp=70"

    Le message suivant doit s'afficher en réponse :

    Temperature in Celsius is: 21.11.
  4. Exécutez à nouveau la commande en transmettant la valeur de la température en degrés Celsius et l'unité de conversion :

    curl -H "Authorization: bearer $(gcloud auth print-identity-token)" "${FUNCTION_URI}?temp=21.11&convert=ctof"

    Le message suivant doit s'afficher en réponse :

    Temperature in Fahrenheit is: 70.00.

Cliquez sur Vérifier ma progression pour valider l'objectif. Créer une fonction HTTP

Tâche 3 : Créer une fonction Cloud Storage

Dans cette tâche, vous allez créer une fonction basée sur des événements en Node.js qui répond aux événements d'un bucket Cloud Storage.

Préparation

Pour utiliser des déclencheurs Cloud Storage avec les fonctions Cloud Run, l'agent de service Cloud Storage doit disposer du rôle IAM "Diffuseur Pub/Sub" (roles/pubsub.publisher) dans votre projet.

Les fonctions Cloud Storage sont basées sur les notifications Pub/Sub de Cloud Storage et acceptent les types d'événements finalize, delete, archive et metadata update.

  1. Configurez une variable d'environnement pour le compte de service de l'agent Cloud Storage :

    SERVICE_ACCOUNT=$(gcloud storage service-agent)
  2. Accordez le rôle "Diffuseur Pub/Sub" à l'agent de service Cloud Storage dans votre projet. Un agent de service est un compte de service géré par Google qui permet au service d'accéder à vos ressources.

    gcloud projects add-iam-policy-binding $PROJECT_ID --member serviceAccount:$SERVICE_ACCOUNT --role roles/pubsub.publisher
  3. Pour déclencher la fonction dans une tâche ultérieure, vous allez importer un fichier dans Cloud Storage. Copiez ce fichier qui contient des exemples de données de température dans votre environnement Cloud Shell :

    gcloud storage cp gs://cloud-training/CBL491/data/average-temps.csv .

Créer la fonction

  1. Dans cette tâche secondaire, vous allez développer une fonction localement dans Cloud Shell. Créez un répertoire et accédez-y :

    mkdir ~/temp-data-checker && cd $_
  2. Créez les fichiers index.js et package.json pour votre fonction Node.js :

    touch index.js && touch package.json
  3. Dans la barre d'outils Cloud Shell, cliquez sur Ouvrir l'éditeur.

    Vous pouvez passer de Cloud Shell à l'éditeur de code et vice versa en cliquant sur Ouvrir l'éditeur et Ouvrir le terminal selon le cas. Vous pouvez également cliquer sur Ouvrir dans une nouvelle fenêtre pour laisser l'éditeur ouvert dans un autre onglet.
  4. Dans l'explorateur de l'éditeur, développez le dossier temp-data-checker.

  5. Ajoutez le code suivant au fichier temp-data-checker/index.js :

    const functions = require('@google-cloud/functions-framework'); // Register a CloudEvent callback with the Functions Framework that will // be triggered by Cloud Storage events. functions.cloudEvent('checkTempData', cloudEvent => { console.log(`Event ID: ${cloudEvent.id}`); console.log(`Event Type: ${cloudEvent.type}`); const file = cloudEvent.data; console.log(`Bucket: ${file.bucket}`); console.log(`File: ${file.name}`); console.log(`Created: ${file.timeCreated}`); }); La fonction utilise des instructions "console.log" pour journaliser les messages dans stdout. Par défaut, Cloud Run Functions inclut la journalisation simple de l'environnement d'exécution. Les messages de journal sont récupérés et analysés par Cloud Run Functions, puis envoyés à Cloud Logging, où ils peuvent être consultés dans la console Cloud.
  6. Afin de spécifier des dépendances et d'autres informations sur les paquets pour votre fonction Node.js, ajoutez le contenu suivant au fichier temp-data-checker/package.json :

    { "name": "temperature-data-checker", "version": "0.0.1", "main": "index.js", "dependencies": { "@google-cloud/functions-framework": "^2.1.0" } }

Déployer la fonction

  1. Dans la fenêtre du terminal Cloud Shell, commencez par définir une variable d'environnement pour le nom du bucket :

    BUCKET="gs://gcf-temperature-data-$PROJECT_ID"
  2. Créez un bucket Cloud Storage pour stocker le fichier de données de température :

    gcloud storage buckets create -l $REGION $BUCKET
  3. Pour déployer la fonction, exécutez la commande suivante dans Cloud Shell :

    gcloud functions deploy temperature-data-checker \ --gen2 \ --runtime nodejs20 \ --entry-point checkTempData \ --source . \ --region $REGION \ --trigger-bucket $BUCKET \ --trigger-location $REGION \ --max-instances 1

    En spécifiant trigger-bucket, vous déclenchez l'exécution de la fonction à chaque modification des fichiers de ce bucket.

    Remarque : En cas d'erreur d'autorisation, veuillez attendre quelques minutes, puis réessayez d'effectuer le déploiement. L'activation des API prend un certain temps.
  4. Vérifiez que la fonction a été déployée.

    vérifier que la fonction a été déployée

Tester la fonction

  1. Testez la fonction en important le fichier de données de température dans le bucket Cloud Storage :

    gcloud storage cp ~/average-temps.csv $BUCKET/average-temps.csv
  2. Exécutez la commande ci-dessous. Les informations de l'événement CloudEvent reçu doivent apparaître dans les journaux :

    gcloud functions logs read temperature-data-checker \ --region $REGION --gen2 --limit=100 --format "value(log)" Remarque : La génération des journaux peut prendre une minute.

    Le résultat obtenu doit ressembler à ceci :

    Created: 2024-08-28T13:18:34.980Z File: average-temps.csv Bucket: gcf-temperature-data-cf-project Event Type: google.cloud.storage.object.v1.finalized Event ID: 5834307012388233 La fonction Cloud Storage créée dans cet atelier extrait les métadonnées concernant le bucket et la nouvelle ressource. Pour extraire et traiter les données avec des services en aval, utilisez les bibliothèques clientes Cloud Storage pour l'environnement d'exécution de votre langage.

Cliquez sur Vérifier ma progression pour valider l'objectif. Créer une fonction Cloud Storage

Tâche 4 : Développement et tests locaux

Cloud Run Functions est compatible avec plusieurs méthodes d'exécution des fonctions en dehors de Cloud Run Functions lui-même. Cela s'avère utile lors du développement itératif, des tests de prédéploiement dans des environnements locaux, de l'application des exigences de conformité en matière de localité des données et des déploiements multicloud.

Dans cette tâche, vous allez modifier une fonction HTTP existante, développer des tests unitaires et d'intégration, et tester la fonction localement avant de la déployer dans Cloud Run Functions.

Télécharger le code source de la fonction

  1. Pour accéder aux fonctions Cloud Run, dans le menu de navigation (menu de navigation), cliquez sur Cloud Run.

  2. Pour afficher les détails de la fonction temperature-converter, sélectionnez son nom.

  3. Pour afficher le code source de la fonction, cliquez sur l'onglet SOURCE.

  4. Cliquez sur Télécharger le fichier ZIP, puis enregistrez le fichier ZIP dans un dossier de votre ordinateur en le renommant function-source.zip.

  5. Dans la barre d'outils Cloud Shell, cliquez sur le menu Plus (menu "Plus"), puis sélectionnez Importer.

  6. Dans la boîte de dialogue Importer, cliquez sur Sélect. fichiers.

  7. Sélectionnez le fichier ZIP dans le dossier que vous avez téléchargé précédemment, cliquez sur Ouvrir, puis sur Importer dans la boîte de dialogue.

  8. Une fois le fichier importé, exécutez la commande suivante dans Cloud Shell :

    mkdir ~/temp-data-converter && cd $_
  9. Extrayez le contenu du fichier ZIP :

    unzip ../function-source.zip

Ajouter des tests unitaires au code de la fonction

Commençons par ajouter des tests unitaires à la fonction temperature-convert.

  1. Créez un répertoire qui contiendra tous les tests de la fonction, ainsi que le fichier source de test unitaire :

    mkdir tests && touch tests/unit.http.test.js
  2. Dans la barre d'outils Cloud Shell, cliquez sur Ouvrir l'éditeur.

  3. Dans l'éditeur, ajoutez le code suivant au fichier temp-data-converter/tests/unit.http.test.js. Le code de test crée une simulation qui encapsule les requêtes HTTP et les réponses, et utilise des bouchons Sinon pour interpréter les réponses reçues de la fonction.

    const {getFunction} = require('@google-cloud/functions-framework/testing'); describe('functions_convert_temperature_http', () => { // Sinon is a testing framework that is used to create mocks for Node.js applications written in Express. // Express is Node.js web application framework used to implement HTTP functions. const sinon = require('sinon'); const assert = require('assert'); require('../'); const getMocks = () => { const req = {body: {}, query: {}}; return { req: req, res: { send: sinon.stub().returnsThis(), status: sinon.stub().returnsThis() }, }; }; let envOrig; before(() => { envOrig = JSON.stringify(process.env); }); after(() => { process.env = JSON.parse(envOrig); }); it('convertTemp: should convert a Fahrenheit temp value by default', () => { const mocks = getMocks(); mocks.req.query = {temp: 70}; const convertTemp = getFunction('convertTemp'); convertTemp(mocks.req, mocks.res); assert.strictEqual(mocks.res.send.calledOnceWith('Temperature in Celsius is: 21.11.'), true); }); it('convertTemp: should convert a Celsius temp value', () => { const mocks = getMocks(); mocks.req.query = {temp: 21.11, convert: 'ctof'}; const convertTemp = getFunction('convertTemp'); convertTemp(mocks.req, mocks.res); assert.strictEqual(mocks.res.send.calledOnceWith('Temperature in Fahrenheit is: 70.00.'), true); }); it('convertTemp: should convert a Celsius temp value by default', () => { process.env.TEMP_CONVERT_TO = 'ctof'; const mocks = getMocks(); mocks.req.query = {temp: 21.11}; const convertTemp = getFunction('convertTemp'); convertTemp(mocks.req, mocks.res); assert.strictEqual(mocks.res.send.calledOnceWith('Temperature in Fahrenheit is: 70.00.'), true); }); it('convertTemp: should return an error message', () => { const mocks = getMocks(); const convertTemp = getFunction('convertTemp'); convertTemp(mocks.req, mocks.res); assert.strictEqual(mocks.res.status.calledOnce, true); assert.strictEqual(mocks.res.status.firstCall.args[0], 400); }); }); Remarque : Nous avons quatre tests unitaires, dont trois sont des tests positifs qui attendent une certaine valeur de température dans la réponse de la fonction.

    Le quatrième test est un test négatif qui s'attend à ce que la fonction renvoie le code d'état de réponse 400 (Requête incorrecte), car aucune valeur de température n'est transmise dans l'objet de requête.

  4. Dans le fichier temp-data-converter/package.json, mettez à jour les dépendances de votre fonction Node.js de façon à inclure les sections scripts et devDependencies :

    { "name": "temperature-converter", "version": "0.0.1", "main": "index.js", "scripts": { "unit-test": "mocha tests/unit*test.js --timeout=6000 --exit", "test": "npm -- run unit-test" }, "devDependencies": { "mocha": "^9.0.0", "sinon": "^14.0.0" }, "dependencies": { "@google-cloud/functions-framework": "^2.1.0" } }

Exécuter les tests unitaires

  1. Dans la fenêtre du terminal Cloud Shell, exécutez la commande suivante pour installer les dépendances de la fonction :

    npm install Cette commande exécute le gestionnaire de paquets Node, qui télécharge toutes les dépendances définies dans le fichier package.json.
  2. Exécutez le test unitaire :

    npm test
  3. Dans le résultat de la commande, vérifiez que tous les tests ont réussi.

    > temperature-converter@0.0.1 test > npm -- run unit-test > temperature-converter@0.0.1 unit-test > mocha tests/unit*test.js --timeout=6000 --exit functions_convert_temperature_http ✔ convertTemp: should convert a Fahrenheit temp value by default ✔ convertTemp: should convert a Celsius temp value ✔ convertTemp: should convert a Celsius temp value by default ✔ convertTemp: should return an error message 4 passing (10ms) Mocha est un framework de test JavaScript qui s'exécute sur Node.js et permet d'effectuer des tests asynchrones de manière simple et flexible. Vous pouvez également envisager d'implémenter des tests unitaires, d'intégration et système pour vos fonctions Cloud Run HTTP et basées sur des événements. Pour en savoir plus sur l'implémentation des tests de prédéploiement, consultez les liens dans la section Étapes suivantes et informations supplémentaires à la fin de cet atelier.

Tâche 5 : Révisions de fonction

Cloud Run Functions est compatible avec plusieurs révisions d'une fonction, ce qui vous permet de répartir le trafic entre différentes révisions ou d'effectuer un rollback de votre fonction vers une révision précédente.

Chaque fois que vous déployez ou redéployez une fonction, une révision du service Cloud Run sous-jacent est automatiquement créée. Les révisions sont immuables une fois créées. Pour modifier une fonction, vous devez la redéployer.

Dans cette tâche, vous allez déployer la fonction HTTP que vous avez créée dans la tâche précédente avec une variable d'environnement, et utiliser la console Google Cloud pour gérer le trafic entre deux révisions de la fonction.

Redéployer la fonction

  1. Dans la console Google Cloud, accédez à la page Informations sur la fonction pour la fonction temperature-converter.

  2. Cliquez sur Modifier et déployer la nouvelle révision.

  3. Dans l'onglet Conteneur, sélectionnez l'onglet Variables et secrets.

  4. Pour ajouter une variable d'environnement, accédez à la section Variables d'environnement, puis cliquez sur Ajouter une variable.

  5. Dans le champ Nom 1, saisissez TEMP_CONVERT_TO.

  6. Afin d'indiquer une valeur pour la variable d'environnement, saisissez ctof pour Valeur 1.

  7. Cliquez sur Déployer.

  8. Attendez la fin du processus de déploiement. Une fois le processus terminé, deux révisions de la fonction s'affichent.

    Par défaut, la dernière révision déployée reçoit 100 % du trafic vers la fonction. Cette révision est déployée avec une variable d'environnement qui indique à la fonction de convertir par défaut toutes les valeurs de température exprimées en degrés Celsius en degrés Fahrenheit.

Tester la dernière révision de la fonction

  1. Dans Cloud Shell, pour tester la fonction, exécutez la commande curl suivante avec la valeur de paramètre de requête temp en degrés Celsius :

    curl -H "Authorization: bearer $(gcloud auth print-identity-token)" "${FUNCTION_URI}?temp=21.11"

    La fonction doit renvoyer le message de réponse suivant :

    Temperature in Fahrenheit is: 70.00.

Cliquez sur Vérifier ma progression pour valider l'objectif. Créer des révisions de fonction

Félicitations !

Dans cet atelier, vous avez déployé des fonctions Cloud Run répondant aux requêtes HTTP et aux événements Cloud Storage. Vous avez implémenté des tests de prédéploiement avec des tests unitaires pour une fonction HTTP, et vous les avez exécutés pour vérifier les scénarios positifs et négatifs lors de l'appel de la fonction. Vous avez également déployé plusieurs révisions d'une fonction et testé la dernière révision pour vérifier le comportement de la fonction.

Étapes suivantes et informations supplémentaires

Pour en savoir plus sur Cloud Run Functions, consultez la documentation :

Copyright 2025 Google LLC Tous droits réservés. Google et le logo Google sont des marques de Google LLC. Tous les autres noms de société et de produit peuvent être des marques des sociétés auxquelles ils sont associés.

Avant de commencer

  1. Les ateliers créent un projet Google Cloud et des ressources pour une durée déterminée.
  2. Les ateliers doivent être effectués dans le délai imparti et ne peuvent pas être mis en pause. Si vous quittez l'atelier, vous devrez le recommencer depuis le début.
  3. En haut à gauche de l'écran, cliquez sur Démarrer l'atelier pour commencer.

Utilisez la navigation privée

  1. Copiez le nom d'utilisateur et le mot de passe fournis pour l'atelier
  2. Cliquez sur Ouvrir la console en navigation privée

Connectez-vous à la console

  1. Connectez-vous à l'aide des identifiants qui vous ont été attribués pour l'atelier. L'utilisation d'autres identifiants peut entraîner des erreurs ou des frais.
  2. Acceptez les conditions d'utilisation et ignorez la page concernant les ressources de récupération des données.
  3. Ne cliquez pas sur Terminer l'atelier, à moins que vous n'ayez terminé l'atelier ou que vous ne vouliez le recommencer, car cela effacera votre travail et supprimera le projet.

Ce contenu n'est pas disponible pour le moment

Nous vous préviendrons par e-mail lorsqu'il sera disponible

Parfait !

Nous vous contacterons par e-mail s'il devient disponible

Un atelier à la fois

Confirmez pour mettre fin à tous les ateliers existants et démarrer celui-ci

Utilisez la navigation privée pour effectuer l'atelier

Ouvrez une fenêtre de navigateur en mode navigation privée pour effectuer cet atelier. Vous éviterez ainsi les conflits entre votre compte personnel et le compte temporaire de participant, qui pourraient entraîner des frais supplémentaires facturés sur votre compte personnel.