22 lines
906 B
Bash
Executable File
22 lines
906 B
Bash
Executable File
#!/bin/bash
|
|
|
|
source "$(dirname $0)/utils.sh"
|
|
init
|
|
if [ "${REPO}" != "monitors" ]; then
|
|
# Run this script only for monitors repo
|
|
exit 0
|
|
fi
|
|
echo "Check best practices respect"
|
|
|
|
echo -e "\t- Check only one notify_no_data set to true per module"
|
|
# loop over every modules
|
|
for module in $(browse_modules "$(get_scope ${1:-})" "${REPO}-*.tf"); do
|
|
# check if there is more than 1 notify_no_data not set to false.
|
|
# here the risk to check is the possible "true" value while this could lead the duplicated no data alerts.
|
|
# every metrics from one module come from the same source so this does not make sens to check no data for multiple monitors in the same module.
|
|
if [[ $(cat ${module}/monitors-*.tf | grep 'notify_no_data[[:space:]]*=' | grep -cv '=[[:space:]]*false') -gt 1 ]]; then
|
|
echo "More than one notify_no_data not set to \"false\" in $module"
|
|
exit 1
|
|
fi
|
|
done
|