フラミナル

考え方や調べたことを書き殴ります。IT技術系記事多め

urlmap を削除しようとしたら The backend_service resource is already being used by がでた

Error when reading or editing BackendService: googleapi: Error 400: The backend_service resource 'projects/xxx/global/backendServices/yyy' is already being used by 'projects/xxx/global/urlMaps/yyy', resourceInUseByAnotherResource

google_compute_url_map: cannot delete google_compute_backend_service · Issue #4543 · hashicorp/terraform-provider-google · GitHub

この問題により失敗します。 この場合の解決策は手動で urlmap を修正するしか2024/08/20時点ではありません。

基本的にはGUIで設定変更すればよいのですが、GUI非対応の設定を使っている場合はAPIやSDKによる対応が必要です。

そこで以下のコマンドで urlmap を取得し

gcloud compute url-maps describe yyy --format=json > url_map.json

不要な項目を削除します。このとき id も消す必要があります。 そのあと import しましょう。

gcloud compute url-maps import yyy --source=url_map.json --global