Déployer des fonctions Cloud Functions avec le contrôle des versions
Cette page explique comment déployer Cloud Functions à l'aide d'un code dont la version est contrôlée dans Cloud Source Repositories.
Utilisez Cloud Source Repositories pour contrôler les versions du code contenant votre fonction en intégrant Cloud Functions à Cloud Source Repositories. À mesure que la fonction évolue avec le temps, vous avez toujours accès aux commits précédents pour voir comment et quand la fonction a changé.
Avant de commencer
- Suivez les étapes de la section Créer un dépôt de code dans Cloud Source Repositories.
- Activez l'API Cloud Functions et l'API Cloud Build.
Ajouter une fonction au dépôt
Sur votre machine locale, accédez au répertoire racine du dépôt
hello-world
:cd hello-world
Sur votre système local, créez un répertoire pour le code de fonction.
Linux ou macOS
Créez le répertoire :
mkdir gcf_hello_world
Accédez au répertoire :
cd gcf_hello_world
Windows (CMD)
Créez le répertoire :
mkdir %HOMEDRIVE%%HOMEPATH%\gcf_hello_world
Accédez au répertoire :
cd %HOMEDRIVE%%HOMEPATH%\gcf_hello_world
Dans le répertoire
gcf_hello_world
, créez un fichierindex.js
contenant ce qui suit :/* HTTP Cloud Function. * * @param {Object} req Cloud Function request context. * @param {Object} res Cloud Function response context. */ exports.helloGET = (req, res) => { res.send('Hello from Cloud Functions and Cloud Source Repositories'); };
Il s'agit d'une fonction simple nommée
helloGET
qui répond aux requêtesGET
HTTP avec le texteHello from Cloud Functions and Cloud Source Repositories
.
Transférer vers Cloud Source Repositories
Transférez les fichiers que vous venez de créer vers Cloud Source Repositories.
Ajoutez les fichiers :
git add .
Procédez au commit des fichiers en ajoutant un commentaire décrivant l'historique de cette action :
git commit -m "Add Cloud Functions test to Cloud Source Repositories"
À l'aide de la commande
git push
, ajoutez le contenu du dépôt Git local dans Cloud Source Repositories :git push origin master
Créer et déployer la fonction
Créez et déployez votre fonction à l'aide de la console Google Cloud ou de la Google Cloud CLI.
Console
Accédez à la page Cloud Functions.
Accéder à la page Cloud Functions
Assurez-vous que le projet Google Cloud pour lequel vous avez activé Cloud Functions est sélectionné.
Cliquez sur Créer une fonction.
Sur la page Créer une fonction, renseignez les champs suivants :
- Dans le champ Environnement, sélectionnez 1re génération.
- Dans le champ Nom de la fonction, saisissez
cloud-source-repositories-test
. - Dans le champ Région, sélectionnez
us-central1
. - Dans la liste Déclencheur, sélectionnez HTTP.
- Dans la liste Authentification, sélectionnez Exiger l'authentification.
- Assurez-vous que l'option Exiger HTTPS est cochée.
Cliquez sur Enregistrer.
Cliquez sur Suivant.
- Dans le champ Environnement d'exécution, sélectionnez Node.js 16.
- Dans le champ Point d'entrée, saisissez
helloGET
. - Dans la liste Code source, sélectionnez Dépôt source Cloud.
- Dans le champ Dépôt, saisissez
hello-world
. - Dans le champ Nom de la branche, saisissez master.
- Dans le champ Répertoire contenant le code source, saisissez
/gcf_hello_world
.
Cliquez sur Déployer.
Pendant le déploiement de la fonction, une icône de chargement s'affiche juste à côté. Une fois le déploiement terminé, l'icône de chargement se transforme en coche verte.
gcloud CLI
Dans une fenêtre de terminal, définissez une variable contenant votre ID de projet Google Cloud. Assurez-vous qu'il s'agit du même projet Google Cloud que celui contenant votre dépôt.
export PROJECT_ID=$(gcloud config list --format 'value(core.project)')
Déployez la fonction :
gcloud functions deploy helloGET \ --source https://source.developers.google.com/projects/$PROJECT_ID/repos/hello-world/moveable-aliases/master/paths/gcf_hello_world \ --trigger-http \ --runtime=nodejs8;
Pour plus d'informations sur le déploiement dans Cloud Source Repositories, consultez la section Déployer des fonctions depuis un dépôt source.
Tester la fonction
Testez votre nouvelle fonction à l'aide de la console Google Cloud ou de gcloud CLI.
Console
Accédez à la page Présentation de Cloud Functions.
Accéder à la page "Vue d'ensemble"
Assurez-vous que le projet Google Cloud pour lequel vous avez activé Cloud Functions est sélectionné.
Cliquez sur le menu Afficher les actions
sur la ligne de la fonctioncloud-source-repositories-test
.Cliquez sur Tester la fonction.
Cliquez sur le bouton Tester la fonction.
Au bout d'une minute ou deux, le champ Résultat est actualisé de manière à afficher le message
Hello from Cloud Functions and Cloud Source Repositories
.
gcloud CLI
Dans une fenêtre de terminal, saisissez la commande suivante :
gcloud functions call helloGET
Le résultat doit être semblable à ce qui suit :
executionId: owqd9fdh5od2
result: Hello from Cloud Functions and Cloud Source Repositories
Effectuer un nettoyage
Pour supprimer la fonction et le dépôt que vous avez créés, procédez comme suit :
Supprimer la fonction
Accédez à la page Présentation de Cloud Functions.
Accéder à la page "Vue d'ensemble"
Assurez-vous que le projet Google Cloud pour lequel vous avez activé Cloud Functions est sélectionné.
Sélectionnez la fonction
helloGET
pour ce guide de démarrage rapide,cloud-source-repositories-test
.Sur la même ligne, cliquez sur Autres more_vert, puis sur Supprimer.
Supprimer le dépôt
Dans la console Google Cloud, ouvrez la page Tous les dépôts pour Cloud Source Repositories.
Maintenez le pointeur de la souris sur le dépôt que vous souhaitez supprimer et cliquez sur Paramètres settings.
La page Paramètres généraux s'affiche.
Cliquez sur Supprimer ce dépôt delete.
La boîte de dialogue Supprimer le dépôt s'ouvre.
Saisissez le nom du dépôt à supprimer.
Cliquez sur Supprimer.
Étapes suivantes
- Apprenez-en plus sur Cloud Functions.