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