Gérer les révisions

Lorsque vous déployez sur un service ou modifiez la configuration d'un service, une révision immuable est créée.

Les considérations suivantes s'appliquent aux révisions :

  • Vous pouvez indiquer si une nouvelle révision reçoit tout ou partie du trafic, ou n'en reçoit pas du tout. Vous pouvez également déployer progressivement une nouvelle révision, répartir le trafic entre plusieurs révisions et effectuer un rollback à partir d'une révision. Pour plus d'informations, consultez la page Rollbacks, déploiements progressifs et migration du trafic.
  • Vous pouvez éventuellement utiliser des tags de révision pour tester une révision qui ne diffuse pas de trafic.
  • Vous n'avez pas besoin de supprimer manuellement les révisions, mais c'est possible si vous le souhaitez.
  • Les révisions inactives ne consomment aucune ressource et ne sont pas facturées.
  • Le nombre maximal de révisions par service est de 1 000. Si vous dépassez cette limite, les anciennes révisions sont automatiquement supprimées.
  • Le suffixe de révision est attribué automatiquement. Si vous souhaitez utiliser votre propre suffixe, vous pouvez utiliser le faire en utilisant le paramètre de gcloud CLI --revision-suffix.

Rôles requis

Pour obtenir les autorisations nécessaires pour gérer les services et les révisions Cloud Run, demandez à votre administrateur de vous accorder le rôle IAM Développeur Cloud Run (roles/run.developer) sur votre service Cloud Run.

Pour obtenir la liste des rôles et des autorisations IAM associés à Cloud Run, consultez les pages Rôles IAM Cloud Run et Autorisations IAM Cloud Run. Si votre service Cloud Run communique avec les API Google Cloud, telles que les bibliothèques clientes Cloud, consultez le guide de configuration de l'identité du service. Pour en savoir plus sur l'attribution de rôles, consultez les sections Autorisations de déploiement et Gérer les accès.

Afficher la liste des révisions pour un service

Console

Pour afficher la liste des révisions dans votre projet, procédez comme suit :

  1. Accédez à Cloud Run

  2. Localisez le service dans la liste des services, puis cliquez dessus.

  3. Cliquez sur l'onglet Revisions (Révisions) afin d'afficher la liste des révisions en cours pour ce service.

    liste de révisions

gcloud

Pour afficher la liste des révisions associées à un service donné, procédez comme suit :

  1. Recherchez le nom de votre service dans la liste des services disponibles dans votre projet :

    gcloud run services list
  2. Utilisez la commande suivante pour obtenir toutes les révisions du service que vous venez de rechercher :

    gcloud run revisions list --service SERVICE --region REGION

    Remplacer

    • SERVICE par le nom de votre service.
    • REGION par la région Google Cloud du service.

Cloud Code

Pour afficher la liste des révisions avec Cloud Code, consultez les guides de l'explorateur Cloud Run pour IntelliJ et Visual Studio Code.

Bibliothèques clientes

Pour afficher la liste des révisions à partir du code, procédez comme suit :

API REST

Pour afficher la liste des révisions, envoyez une requête HTTP GET au point de terminaison revisions de l'API Cloud Run Admin.

Exemple, à l'aide de curl :

curl -H "Content-Type: application/json" \
  -H "Authorization: Bearer ACCESS_TOKEN" \
  -X GET \
  -d '' \
  https://run.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/services/SERVICE-NAME/revisions

Remplacez :

  • ACCESS_TOKEN par un jeton d'accès valide pour un compte disposant des autorisations IAM pour afficher les révisions. Par exemple, si vous êtes connecté à gcloud, vous pouvez récupérer un jeton d'accès à l'aide de gcloud auth print-access-token. À partir d'une instance de conteneur Cloud Run, vous pouvez récupérer un jeton d'accès via le serveur de métadonnées d'instance de conteneur.
  • SERVICE-NAME par le nom du service ;
  • REGION par la région Google Cloud du service.
  • PROJECT-ID par l'ID du projet Google Cloud.

Afficher les détails d'une révision

Console

Pour afficher les détails d'une révision dans votre projet, procédez comme suit :

  1. Accédez à Cloud Run

  2. Sélectionnez votre service dans la liste des services.

  3. Cliquez sur l'onglet Revisions (Révisions) afin d'afficher la liste des révisions en cours pour ce service.

  4. Sélectionnez la révision de service qui vous intéresse :

  5. Examinez le panneau DETAILS (DÉTAILS) situé tout à droite pour obtenir des informations spécifiques à la révision, telles que l'URL de l'image de conteneur déployée, la quantité de mémoire allouée, les variables d'environnement, et éventuellement des informations sur la création et le dépôt source.

    image

gcloud

Pour afficher les détails d'une révision dans votre projet, procédez comme suit :

  1. Recherchez le nom de votre service dans la liste des services disponibles dans votre projet :

    gcloud run services list

  2. Utilisez la commande suivante pour obtenir toutes les révisions du service que vous venez de rechercher :

    gcloud run revisions list --service SERVICE --region REGION

    Remplacer

    • SERVICE par le nom de votre service.
    • REGION par la région Google Cloud du service.
  3. Utilisez la commande suivante pour afficher plus de détails sur une révision spécifique :

    gcloud run revisions describe REVISION --region REGION
    Remplacer

    • REVISION par le nom de la révision sur laquelle vous souhaitez en savoir plus.
    • REGION par la région Google Cloud du service.

    Vous pouvez utiliser l'option --format pour formater le résultat. Par exemple, au format YAML :

    gcloud run revisions describe REVISION --region REGION --format yaml

Cloud Code

Pour afficher les détails d'une révision avec Cloud Code, consultez les guides de l'explorateur Cloud Run pour IntelliJ et Visual Studio Code

Bibliothèques clientes

Pour afficher les détails d'une révision à partir du code, procédez comme suit :

API REST

Pour afficher les détails d'une révision, envoyez une requête HTTP GET au point de terminaison revisions de l'API Cloud Run Admin.

Exemple, à l'aide de curl :

curl -H "Content-Type: application/json" \
  -H "Authorization: Bearer ACCESS_TOKEN" \
  -X GET \
  -d '' \
  https://run.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/services/SERVICE-NAME/revisions/REVISION-NAME

Remplacez :

  • ACCESS_TOKEN par un jeton d'accès valide pour un compte disposant des autorisations IAM pour afficher les détails du service. Par exemple, si vous êtes connecté à gcloud, vous pouvez récupérer un jeton d'accès à l'aide de gcloud auth print-access-token. À partir d'une instance de conteneur Cloud Run, vous pouvez récupérer un jeton d'accès via le serveur de métadonnées d'instance de conteneur.
  • SERVICE-NAME par le nom du service ;
  • REVISION-NAME par le nom de la révision.
  • REGION par la région Google Cloud du service.
  • PROJECT-ID par l'ID du projet Google Cloud.

Sachez qu'une révision obsolète peut avoir le statut RETIRED, ce qui signifie que Cloud Run a retiré l'infrastructure nécessaire à cette révision particulière.

À propos des informations sur la création et le dépôt source dans le panneau Details (Détails)

Si l'API Artifact Analysis est activée et que le conteneur a été créé avec Cloud Build, des informations sur la création sont affichées dans le panneau Details (Détails).

En outre, si un déclencheur Cloud Build a été utilisé pour créer le conteneur, des informations sur le dépôt source sont également affichées dans le panneau Details (Détails).

Supprimer les révisions

Pour s'assurer qu'une révision particulière ne sera pas utilisée accidentellement, une pratique courante consiste à la supprimer.

Vous ne pouvez pas supprimer une révision dans les cas suivants :

  • Elle peut recevoir du trafic.
  • Il s'agit de la seule révision du service.
  • Il s'agit de la dernière révision du service.

Lorsque vous supprimez une révision, l'image de conteneur utilisée par cette révision n'est pas automatiquement supprimée de Container Registry ou d'Artifact Registry. Pour supprimer une image de conteneur d'un registre, consultez les instructions de suppression pour Container Registry ou Artifact Registry.

Vous ne pouvez pas annuler la suppression d'une révision.

Vous pouvez utiliser la console ou la ligne de commande :

Console

Pour supprimer une révision, procédez comme suit :

  1. Accédez à Cloud Run

  2. Localisez le service dans la liste des services, puis cliquez dessus.

  3. Cliquez sur l'onglet Revisions (Révisions) afin d'afficher la liste des révisions en cours pour ce service.

  4. Recherchez la révision du service que vous souhaitez supprimer.

  5. Cliquez sur l'icône d'ellipse verticale à trois points située à gauche de la révision pour afficher le menu Delete (Supprimer).

    revision-delete

  6. Cliquez sur Delete (Supprimer) pour supprimer la révision.

gcloud

Pour supprimer une révision, utilisez la commande suivante :

gcloud run revisions delete REVISION --region REGION

Remplacer

  • REVISION par le nom de la révision que vous souhaitez supprimer.
  • REGION par la région Google Cloud du service.

Bibliothèques clientes

Pour supprimer une révision du code, procédez comme suit :

API REST

Pour supprimer une révision, envoyez une requête HTTP DELETE au point de terminaison revisions de l'API Cloud Run Admin.

Exemple, à l'aide de curl :

curl -H "Content-Type: application/json" \
  -H "Authorization: Bearer ACCESS_TOKEN" \
  -X DELETE \
  -d '' \
  https://run.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/services/SERVICE-NAME/revisions/REVISION-NAME

Remplacez :

  • ACCESS_TOKEN par un jeton d'accès valide pour un compte disposant des autorisations IAM pour supprimer un service. Par exemple, si vous êtes connecté à gcloud, vous pouvez récupérer un jeton d'accès à l'aide de gcloud auth print-access-token. À partir d'une instance de conteneur Cloud Run, vous pouvez récupérer un jeton d'accès via le serveur de métadonnées d'instance de conteneur.
  • SERVICE-NAME par le nom du service ;
  • REVISION-NAME par le nom de la révision.
  • REGION par la région Google Cloud du service.
  • PROJECT-ID par l'ID du projet Google Cloud.

Étapes suivantes

Après avoir déployé une révision, vous pouvez effectuer les opérations suivantes :