Gestione delle revisioni

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

Alle revisioni si applicano le seguenti considerazioni:

  • Puoi specificare se una nuova revisione deve ricevere tutto, nessuno o parte del traffico, puoi implementare gradualmente una nuova revisione, puoi suddividere il traffico tra più revisioni e puoi eseguire il rollback da una revisione. Per ulteriori informazioni, consulta la sezione Rollback, implementazioni graduali e migrazione del traffico.
  • Se vuoi, puoi utilizzare i tag di revisione per testare una revisione che non genera traffico.
  • Non è necessario eliminare manualmente le revisioni, ma puoi farlo se vuoi.
  • Le revisioni non pubblicate non consumano risorse e non vengono fatturate.
  • Esistono un massimo di 1000 revisioni per servizio: se superi questo limite, le revisioni precedenti vengono eliminate automaticamente.
  • Il suffisso della revisione viene assegnato automaticamente. Se vuoi utilizzare il tuo suffisso della 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 servizio Cloud Run interagisce con le API Google Cloud, come le librerie client di Cloud, consulta la guida alla configurazione dell'identità del servizio. Per ulteriori informazioni sulla concessione dei ruoli, consulta le autorizzazioni di deployment e gestisci l'accesso.

Visualizzare l'elenco delle revisioni di un servizio

Console

Per visualizzare l'elenco delle revisioni nel 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 visualizzare l'elenco delle revisioni correnti per quel servizio.

    elenco delle revisioni

gcloud

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

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

    gcloud run services list
  2. Utilizza il seguente comando per recuperare tutte le revisioni del servizio che hai appena cercato:

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

    Sostituisci

    • SERVICE con il nome del 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, utilizzando 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 possiede le 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. All'interno di un'istanza container Cloud Run, puoi recuperare un token di accesso utilizzando il server di metadati dell'istanza 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 nell'elenco dei servizi.

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

  4. Seleziona la revisione del servizio che ti interessa:

  5. Esamina il riquadro Dettagli in alto a destra per informazioni specifiche sulla revisione, come l'URL dell'immagine del contenitore di cui è stato eseguito il deployment, la quantità di memoria allocata, le variabili di ambiente e, eventualmente, le informazioni sul repository di compilazione e di origine.

    immagine

gcloud

Per visualizzare i dettagli di una revisione nel tuo progetto:

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

    gcloud run services list

  2. Utilizza il seguente comando per recuperare tutte le revisioni del servizio che hai appena cercato:

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

    Sostituisci

    • SERVICE con il nome del 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 approfondire.
    • REGION con la regione Google Cloud del servizio.

    Puoi utilizzare il flag --format per formattare l'output. Ad esempio, come file 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, utilizzando 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 possiede le 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. All'interno di un'istanza container Cloud Run, puoi recuperare un token di accesso utilizzando il server di metadati dell'istanza 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 revisione specifica.

Informazioni sulle informazioni del repository di compilazione e di origine nel riquadro Dettagli

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

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

Eliminare le revisioni

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

Non puoi eliminare una revisione se:

  • sia in grado di ricevere traffico
  • sia l'unica revisione del servizio,
  • sia la versione più recente del servizio.

Quando elimini una revisione, l'immagine del contenitore utilizzata da questa revisione non viene eliminata automaticamente da Container Registry o Artifact Registry. Per eliminare un'immagine container da un registry, 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 visualizzare l'elenco delle revisioni correnti per quel servizio.

  4. Individua la revisione del servizio da eliminare.

  5. Fai clic sull'ellisse verticale con tre puntini a sinistra della revisione per visualizzare il menu Elimina.

    revision-delete

  6. Fai clic su Elimina per eliminare la revisione.

gcloud

Per eliminare una revisione, utilizza il seguente comando:

gcloud run revisions delete REVISION --region REGION

Sostituisci

  • REVISION con il nome della revisione che vuoi 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, utilizzando 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 possiede le 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. All'interno di un'istanza container Cloud Run, puoi recuperare un token di accesso utilizzando il server di metadati dell'istanza 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: