blob: 6f9dcb083766f1eea21e92ae383049012329e81f [file]
#!/usr/bin/env bash
set -e
# Ensure we are at the root of the repo
ROOT_DIR=$(git rev-parse --show-toplevel)
cd "${ROOT_DIR}"
source ./scripts/test_lib.sh
TOOL_SRC="${ETCD_ROOT_DIR}/tools/check-grpc-experimental"
ALLOWLIST="${TOOL_SRC}/allowlist.txt"
FAILURES=0
modules=()
load_workspace_relative_modules modules
for module in "${modules[@]}"; do
echo "------------------------------------------------"
echo "Checking module: ${module}"
if ! go run "${TOOL_SRC}" -allow-list="${ALLOWLIST}" "${module}"; then
echo "ERROR: Experimental usage found in ${module}"
FAILURES=$((FAILURES+1))
fi
done
echo "------------------------------------------------"
if [ "$FAILURES" -eq 0 ]; then
echo "SUCCESS: No experimental gRPC APIs found in any module."
exit 0
else
echo "FAILURE: Found experimental gRPC API usage in ${FAILURES} module(s)."
exit 1
fi