xref: /aosp_15_r20/external/google-cloud-java/.cloud/helpers/destroy.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 GilbridehelperDir="$(cd -P -- "$(dirname -- "${BASH_SOURCE[0]}")" && pwd -P)"
19*55e87721SMatt Gilbridepushd "$helperDir/.." >/dev/null
20*55e87721SMatt Gilbride
21*55e87721SMatt Gilbride# Execute 'predestroy.sh' scripts for any active modules
22*55e87721SMatt Gilbridesource ./helpers/common.sh
23*55e87721SMatt GilbrideallModules=$(listAllModules)
24*55e87721SMatt GilbrideactiveModules=$(getActiveTerraformModules)
25*55e87721SMatt GilbrideIFS=','
26*55e87721SMatt Gilbridefor module in $allModules; do
27*55e87721SMatt Gilbride  friendlyName=$(getFriendlyOutputName "$module")
28*55e87721SMatt Gilbride  if ! contains "$activeModules" "$friendlyName"; then
29*55e87721SMatt Gilbride    continue # Skip unless active.
30*55e87721SMatt Gilbride  fi
31*55e87721SMatt Gilbride
32*55e87721SMatt Gilbride  if [[ -f "../$module/.cloud/predestroy.sh" ]]; then
33*55e87721SMatt Gilbride    # shellcheck disable=SC1090
34*55e87721SMatt Gilbride    source "../$module/.cloud/predestroy.sh"
35*55e87721SMatt Gilbride  fi
36*55e87721SMatt Gilbridedone
37*55e87721SMatt Gilbride
38*55e87721SMatt Gilbrideterraform destroy -auto-approve
39*55e87721SMatt Gilbridepopd >/dev/null
40