Estoy alojando mi aplicación en contenedores utilizando Google Cloud Run. Para ahorrar costos, quiero eliminar todas las revisiones excepto las activas de la imagen de Docker de mi aplicación.
Utilizo un trabajo de mi canalización de GitLab para manejar las credenciales y la configuración mediante variables de entorno.
Puedo enumerar mis revisiones así:
gcloud run revisions list --region="$GCP_REGION"
Respuesta1
La última revisión de su aplicación es la única activa. Explotando ese hecho, podemos eliminar todas las demás revisiones:
gcloud run revisions list --filter="status.conditions.type:Active AND status.conditions.status:'False'" --format='value(metadata.name)' | xargs -r -L1 gcloud run revisions delete --quiet
Fuentes:
Respuesta2
La respuesta anterior de Bengt es perfecta, pero como no puedo comentar, solo quiero agregar que necesitas agregar --region, en mi caso este es el comando:
gcloud run revisions list --region=europe-west1 --filter="status.conditions.type:Active AND status.conditions.status:'False'" --format='value(metadata.name)' | xargs -r -L1 gcloud run revisions delete --region=europe-west1 --quiet
Respuesta3
A abril de 2024, según Google Docshttps://cloud.google.com/run/docs/managing/revisions
Las revisiones que no se publican no consumen recursos y no se facturan.
Por lo tanto, realmente no es necesario eliminar las versiones antiguas, ya que no suponen ningún coste.