Gestione delle revisioni

Quando esegui il deployment in un servizio o modifichi la configurazione di un servizio, viene creata una revisione immutabile.

Alle revisioni si applicano le seguenti considerazioni:

  • Puoi specificare se una nuova revisione riceve tutto, nessuno o parte del traffico, puoi implementare gradualmente una nuova revisione, suddividere il traffico tra più revisioni ed eseguire il rollback da una revisione. Per ulteriori informazioni, consulta Rollback, implementazioni graduali e migrazione del traffico.
  • Facoltativamente, puoi utilizzare i tag di revisione per testare una revisione che non gestisce traffico.
  • Non è necessario eliminare manualmente le revisioni, anche se puoi farlo, se vuoi.
  • Le revisioni che non richiedono la pubblicazione non consumano risorse e non vengono fatturate.
  • Esiste un massimo di 1000 revisioni per servizio: se superi questo limite, le revisioni meno recenti vengono eliminate automaticamente.
  • Il suffisso della revisione viene assegnato automaticamente. Se vuoi utilizzare il tuo suffisso di versione, puoi farlo utilizzando il parametro gcloud CLI --revision-suffix.

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per gestire i servizi e le revisioni di Cloud Run, chiedi all'amministratore di concederti il ruolo IAM Sviluppatore Cloud Run (roles/run.developer) per il tuo servizio Cloud Run.

Per un elenco dei ruoli e delle autorizzazioni IAM associati a Cloud Run, consulta Ruoli IAM di Cloud Run e Autorizzazioni IAM di Cloud Run. Se il tuo servizio Cloud Run si interfaccia con le API Google Cloud, ad esempio le librerie client di Cloud, consulta la guida alla configurazione delle identità dei servizi. Per ulteriori informazioni sulla concessione dei ruoli, consulta Autorizzazioni di deployment e Gestire l'accesso.

Visualizzare l'elenco delle revisioni di un servizio

Console

Per visualizzare l'elenco delle revisioni nel tuo progetto:

  1. Vai a Cloud Run

  2. Individua il servizio nell'elenco dei servizi e fai clic su di esso.

  3. Fai clic sulla scheda Revisioni per mostrare l'elenco delle revisioni correnti per quel servizio.

    elenco delle revisioni

Riga di comando

Per visualizzare l'elenco delle revisioni di un determinato servizio:

  1. Trova il nome del tuo servizio dall'elenco dei servizi disponibili nel tuo progetto:

    gcloud run services list
  2. Usa questo comando per ottenere tutte le revisioni del servizio che hai appena cercato:

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

    Sostituisci

    • SERVICE con il nome del tuo servizio.
    • REGION con la regione Google Cloud del servizio.

Cloud Code

Per visualizzare l'elenco delle revisioni con Cloud Code, leggi le guide di Cloud Run Explorer per IntelliJ e Visual Studio Code.

Librerie client

Per visualizzare l'elenco delle revisioni dal codice:

API REST

Per visualizzare l'elenco delle revisioni, invia una richiesta HTTP GET all'endpoint revisions dell'API Cloud Run Admin.

Ad esempio, se utilizzi 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

Sostituisci:

  • ACCESS_TOKEN con un token di accesso valido per un account che dispone delle autorizzazioni IAM per visualizzare le revisioni. Ad esempio, se hai eseguito l'accesso a gcloud, puoi recuperare un token di accesso utilizzando gcloud auth print-access-token. Dall'interno di un'istanza di container Cloud Run, puoi recuperare un token di accesso utilizzando il server di metadati dell'istanza di container.
  • SERVICE-NAME con il nome del servizio.
  • REGION con la regione Google Cloud del servizio.
  • PROJECT-ID con l'ID progetto Google Cloud.

Visualizza i dettagli della revisione

Console

Per visualizzare i dettagli di una revisione nel tuo progetto:

  1. Vai a Cloud Run

  2. Seleziona il tuo servizio dall'elenco dei servizi.

  3. Fai clic sulla scheda Revisioni per mostrare l'elenco delle revisioni correnti per quel servizio.

  4. Seleziona la revisione del servizio che ti interessa:

  5. Esamina il riquadro DETTAGLI all'estrema destra per trovare informazioni specifiche sulla revisione come l'URL dell'immagine del container di cui è stato eseguito il deployment, la quantità di memoria allocata, le variabili di ambiente ed eventualmente informazioni su build e repository di codice sorgente.

    immagine

Riga di comando

Per visualizzare i dettagli di una revisione nel tuo progetto:

  1. Trova il nome del tuo servizio dall'elenco dei servizi disponibili nel tuo progetto:

    gcloud run services list

  2. Utilizza questo comando per ottenere tutte le revisioni del servizio che hai appena cercato:

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

    Sostituisci

    • SERVICE con il nome del tuo servizio.
    • REGION con la regione Google Cloud del servizio.
  3. Utilizza il seguente comando per visualizzare ulteriori dettagli su una revisione specifica:

    gcloud run revisions describe REVISION --region REGION
    Sostituisci

    • REVISION con il nome della revisione su cui vuoi scoprire di più.
    • REGION con la regione Google Cloud del servizio.

    Puoi utilizzare il flag --format per formattare l'output. Ad esempio come YAML:

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

Cloud Code

Per visualizzare i dettagli di una revisione con Cloud Code, leggi le guide di Cloud Run Explorer per IntelliJ e Visual Studio Code.

Librerie client

Per visualizzare i dettagli di una revisione dal codice:

API REST

Per visualizzare i dettagli di una revisione, invia una richiesta HTTP GET all'endpoint revisions dell'API Cloud Run Admin.

Ad esempio, se utilizzi 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

Sostituisci:

  • ACCESS_TOKEN con un token di accesso valido per un account che dispone delle autorizzazioni IAM per visualizzare i dettagli del servizio. Ad esempio, se hai eseguito l'accesso a gcloud, puoi recuperare un token di accesso utilizzando gcloud auth print-access-token. Dall'interno di un'istanza di container Cloud Run, puoi recuperare un token di accesso utilizzando il server di metadati dell'istanza di container.
  • SERVICE-NAME con il nome del servizio.
  • REVISION-NAME con il nome della revisione.
  • REGION con la regione Google Cloud del servizio.
  • PROJECT-ID con l'ID progetto Google Cloud.

Tieni presente che una revisione non corrente potrebbe avere lo stato RETIRED, il che significa che Cloud Run ha ritirato l'infrastruttura necessaria per quella determinata revisione.

Informazioni sulla build e sul repository di codice sorgente nel riquadro Dettagli

Se l'API Artifact Analysis è abilitata e il container è stato creato con Cloud Build, le informazioni sulla build vengono visualizzate nel riquadro Dettagli.

Inoltre, se per creare il container è stato utilizzato un trigger di Cloud Build, le informazioni sul repository di origine vengono visualizzate anche nel riquadro Dettagli.

Elimina revisioni

Un caso d'uso comune per l'eliminazione di una revisione è quello in cui vuoi assicurarti che una revisione non venga utilizzata per errore.

Non puoi eliminare una revisione se:

  • può ricevere traffico,
  • è l'unica revisione del servizio,
  • è l'ultima revisione del servizio.

Quando elimini una revisione, l'immagine container utilizzata da questa revisione non viene eliminata automaticamente da Container Registry o Artifact Registry. Per eliminare un'immagine container da un registro, consulta le istruzioni di eliminazione per Container Registry o Artifact Registry.

Non puoi annullare l'eliminazione di una revisione.

Puoi utilizzare la console o la riga di comando:

Console

Per eliminare una revisione

  1. Vai a Cloud Run

  2. Individua il servizio nell'elenco dei servizi e fai clic su di esso.

  3. Fai clic sulla scheda Revisioni per mostrare l'elenco delle revisioni correnti per quel servizio.

  4. Individua la revisione del servizio che vuoi eliminare.

  5. Fai clic sui tre puntini verticali a sinistra della revisione per visualizzare il menu Elimina.

    eliminazione della revisione

  6. Fai clic su Elimina per eliminare la revisione.

Riga di comando

Per eliminare una revisione, utilizza il comando seguente:

gcloud run revisions delete REVISION --region REGION

Sostituisci

  • REVISION con il nome della revisione da eliminare.
  • REGION con la regione Google Cloud del servizio.

Librerie client

Per eliminare una revisione dal codice:

API REST

Per eliminare una revisione, invia una richiesta HTTP DELETE all'endpoint revisions dell'API Cloud Run Admin.

Ad esempio, se utilizzi 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

Sostituisci:

  • ACCESS_TOKEN con un token di accesso valido per un account che dispone delle autorizzazioni IAM per eliminare un servizio. Ad esempio, se hai eseguito l'accesso a gcloud, puoi recuperare un token di accesso utilizzando gcloud auth print-access-token. Dall'interno di un'istanza di container Cloud Run, puoi recuperare un token di accesso utilizzando il server di metadati dell'istanza di container.
  • SERVICE-NAME con il nome del servizio.
  • REVISION-NAME con il nome della revisione.
  • REGION con la regione Google Cloud del servizio.
  • PROJECT-ID con l'ID progetto Google Cloud.

Passaggi successivi

Dopo aver eseguito il deployment di una revisione, puoi: