#!/usr/bin/env bash set -e declare -a paths index=0 error=0 for file_with_path in "$@"; do file_with_path="${file_with_path// /__REPLACED__SPACE__}" paths[index]=$(dirname "$file_with_path") (("index+=1")) done for path_uniq in $(echo "${paths[*]}" | tr ' ' '\n' | sort -u); do path_uniq="${path_uniq//__REPLACED__SPACE__/ }" if [[ -n "$(find . -maxdepth 1 -name '*.tf' -print -quit)" ]]; then if ! terraform validate $path_uniq; then error=1 echo echo "Failed path: $path_uniq" echo "================================" fi fi done if [[ "${error}" -ne 0 ]]; then exit 1 fi