2018-07-07 13:23:19 -04:00
|
|
|
#!/bin/bash
|
|
|
|
|
2023-05-11 13:45:43 -07:00
|
|
|
# Continuous Integration script to check that BUILD.bazel files are as expected
|
2018-07-07 13:23:19 -04:00
|
|
|
# when generated from gazelle.
|
|
|
|
|
|
|
|
# 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.
|
2018-11-21 07:35:47 -05:00
|
|
|
changes=$(bazel --batch --bazelrc=.buildkite-bazelrc run //:gazelle -- fix --mode=diff | tee >(cat - >&5))
|
2018-07-07 13:23:19 -04:00
|
|
|
|
|
|
|
# If the captured stdout is not empty then Gazelle has diffs.
|
|
|
|
if [ -z "$changes" ]
|
|
|
|
then
|
|
|
|
echo "OK: Gazelle does not need to be run"
|
|
|
|
exit 0
|
|
|
|
else
|
|
|
|
echo "FAIL: Gazelle needs to be run"
|
|
|
|
echo "Please run bazel run //:gazelle -- fix"
|
|
|
|
exit 1
|
|
|
|
fi
|