Google Cloud Run コンテナ イメージの最新リビジョン以外をすべて削除するにはどうすればよいですか?

Google Cloud Run コンテナ イメージの最新リビジョン以外をすべて削除するにはどうすればよいですか?

Google Cloud Run を使用してコンテナ化されたアプリケーションをホストしています。コストを節約するために、アプリケーションの Docker イメージのアクティブなリビジョン以外をすべて削除したいと考えています。

GitLab パイプラインのジョブを使用して、環境変数を使用して資格情報と設定を処理します。

次のようにしてリビジョンをリストできます。

gcloud run revisions list --region="$GCP_REGION"

答え1

アプリケーションの最新のリビジョンのみがアクティブです。この事実を利用して、他のすべてのリビジョンを削除することができます。

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

出典:

答え2

Bengt による以前の回答は完璧ですが、コメントできないので、--region を追加する必要があることを付け加えておきます。私のケースでは、コマンドは次のとおりです。

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

答え3

Googleドキュメントによると、2024年4月現在https://cloud.google.com/run/docs/managing/revisions

非配信リビジョンはリソースを消費せず、課金もされません。

したがって、古いバージョンを削除する必要はまったくありません。コストは発生しません。

関連情報