#!/usr/bin/env bash
set -o errexit
set -o nounset
set -o pipefail
DIR="$(dirname "${BASH_SOURCE[0]}")"
ROOT_DIR="$(realpath "${DIR}/..")"
failed=()
if [[ "${VERIFY_BOILERPLATE:-true}" == "true" ]]; then
echo "[*] Verifying boilerplate..."
"${ROOT_DIR}"/hack/verify-boilerplate.sh || failed+=(boilerplate)
fi
if [[ "${VERIFY_ENDS_NEWLINE:-true}" == "true" ]]; then
echo "[*] Verifying ends newline..."
"${ROOT_DIR}"/hack/verify-ends-newline.sh || failed+=(ends-newline)
fi
if [[ "${VERIFY_GO_MOD:-true}" == "true" ]]; then
echo "[*] Verifying go mod..."
"${ROOT_DIR}"/hack/verify-go-mod.sh || failed+=(go-mod)
fi
if [[ "${VERIFY_GO_FORMAT:-true}" == "true" ]]; then
echo "[*] Verifying go format..."
"${ROOT_DIR}"/hack/verify-go-format.sh || failed+=(go-format)
fi
if [[ "${VERIFY_GO_LINT:-false}" == "true" ]]; then
echo "[*] Verifying go lint..."
"${ROOT_DIR}"/hack/verify-go-lint.sh || failed+=(go-lint)
fi
if [[ "${VERIFY_CODEGEN:-true}" == "true" ]]; then
echo "[*] Verifying codegen..."
"${ROOT_DIR}"/hack/verify-codegen.sh || failed+=(codegen)
fi
if [[ "${VERIFY_CONTROLLERGEN:-true}" == "true" ]]; then
echo "[*] Verifying controllergen..."
"${ROOT_DIR}"/hack/verify-controllergen.sh || failed+=(controllergen)
fi
if [[ "${VERIFY_CMD_DOCS:-true}" == "true" ]]; then
echo "[*] Verifying cmd docs..."
"${ROOT_DIR}"/hack/verify-cmd-docs.sh || failed+=(cmd-docs)
fi
if [[ "${VERIFY_API_DOCS:-true}" == "true" ]]; then
echo "[*] Verifying api docs..."
"${ROOT_DIR}"/hack/verify-api-docs.sh || failed+=(api-docs)
fi
if [[ "${VERIFY_YAMLLINT:-true}" == "true" ]]; then
echo "[*] Verifying YAML lint..."
"${ROOT_DIR}"/hack/verify-yamllint.sh || failed+=(yamllint)
fi
if [[ "${VERIFY_SHELLCHECK:-true}" == "true" ]]; then
echo "[*] Verifying shell check..."
"${ROOT_DIR}"/hack/verify-shellcheck.sh || failed+=(shellcheck)
fi
if [[ "${VERIFY_SHELL_FORMAT:-true}" == "true" ]]; then
echo "[*] Verifying shell format..."
"${ROOT_DIR}"/hack/verify-shell-format.sh || failed+=(shell-format)
fi
if [[ "${VERIFY_YAML_FORMAT:-true}" == "true" ]]; then
echo "[*] Verifying yaml format..."
"${ROOT_DIR}"/hack/verify-yaml-format.sh || failed+=(yaml-format)
fi
if [[ "${VERIFY_SPELLING:-true}" == "true" ]]; then
echo "[*] Verifying spelling..."
"${ROOT_DIR}"/hack/verify-spelling.sh || failed+=(spelling)
fi
if [[ "${VERIFY_STAGES:-true}" == "true" ]]; then
echo "[*] Verifying stages..."
"${ROOT_DIR}"/hack/verify-stages.sh || failed+=(stages)
fi
if [[ "${VERIFY_HELM_CHARTS:-true}" == "true" ]]; then
echo "[*] Verifying helm charts..."
"${ROOT_DIR}"/hack/verify-helm-charts.sh || failed+=(helm-charts)
fi
if [[ "${VERIFY_DEPENDENCIES_VERSION:-true}" == "true" ]]; then
echo "[*] Verifying dependencies version..."
"${ROOT_DIR}"/hack/verify-dependencies-version.sh || failed+=(dependencies-version)
fi
if [[ "${VERIFY_DRY_RUN_TESTDATA:-true}" == "true" ]]; then
echo "[*] Verifying testdata..."
"${ROOT_DIR}"/hack/verify-testdata.sh || failed+=(testdata)
fi
if [[ "${#failed[@]}" != 0 ]]; then
echo "Verify failed for: ${failed[*]}"
exit 1
fi