prysm-pulse/hack/check_visibility.sh
Raul Jordan 8df96426ef
Move Scripts Into Hack/ Directory (#9605)
* ensure build

* moved third party to toplevel:

Co-authored-by: Preston Van Loon <preston@prysmaticlabs.com>
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2021-09-16 16:22:39 +00:00

30 lines
886 B
Bash
Executable File

#!/bin/bash
# Continous Integration script to check that BUILD.bazel files have the correct
# visibility.
# Protected packages are:
# //beacon-chain/...
# //validator/...
# Duplicate redirect 5 to stdout so that it can be captured, but still printed
# nicely.
exec 5>&1
# Run gazelle while piping a copy of the output to stdout via 5.
changes=$(
bazel --batch --bazelrc=.buildkite-bazelrc query 'visible(//... except (//beacon-chain/... union //validator/...), (//beacon-chain/... union //validator/...)) except attr("tags", "manual", //...)' | tee >(cat - >&5)
)
# If the captured stdout is not empty then targets are exposed!
if [ -z "$changes" ]
then
echo "OK: Visibility is good."
exit 0
else
echo "FAIL: The above targets belong to protected packages and the targets \
are visible outside of their package!"
echo "Please reduce the target visibility."
exit 1
fi