xref: /aosp_15_r20/external/google-cloud-java/.cloud/helpers/gcloud-delete-project.sh (revision 55e87721aa1bc457b326496a7ca40f3ea1a63287)
1#
2# Copyright 2022 Google LLC
3#
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7#
8#      https://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15#
16set -eo pipefail
17
18if [ -n "${GOOGLE_CLOUD_PROJECT}" ]; then
19  helperDir="$(cd -P -- "$(dirname -- "${BASH_SOURCE[0]}")" && pwd -P)"
20  pushd "$helperDir/.." >/dev/null
21
22  # Always verify whether or not to destroy the project.
23  echo -n "Delete project ($GOOGLE_CLOUD_PROJECT)? (y/N): "
24  read -r shouldDestroy
25  if [[ "$shouldDestroy" == y* ]] || [[ "$shouldDestroy" == Y* ]]; then
26    # Do not use service account when attempting to delete the project
27    unset GOOGLE_IMPERSONATE_SERVICE_ACCOUNT
28    gcloud projects delete "$GOOGLE_CLOUD_PROJECT"
29    gcloud config unset project
30    unset GOOGLE_CLOUD_PROJECT
31    rm ./generated.auto.tfvars
32  fi
33
34  popd >/dev/null
35fi
36