mirror of
https://github.com/etcd-io/etcd.git
synced 2024-09-27 06:25:44 +00:00
28 lines
760 B
Bash
Executable File
28 lines
760 B
Bash
Executable File
#!/usr/bin/env bash
|
|
# This scripts is automatically run by CI to prevent pull requests missing running genproto.sh
|
|
# after changing *.proto file.
|
|
|
|
set -o errexit
|
|
set -o nounset
|
|
set -o pipefail
|
|
|
|
tmpWorkDir=$(mktemp -d -t 'twd.XXXXXX')
|
|
mkdir "$tmpWorkDir/etcd"
|
|
tmpWorkDir="$tmpWorkDir/etcd"
|
|
cp -r . "$tmpWorkDir"
|
|
pushd "$tmpWorkDir"
|
|
git add -A
|
|
git commit -m init || true # maybe fail because nothing to commit
|
|
./scripts/genproto.sh
|
|
diff=$(git diff --numstat | awk '{print $3}')
|
|
popd
|
|
if [ -z "$diff" ]; then
|
|
echo "PASSED genproto-verification!"
|
|
exit 0
|
|
fi
|
|
echo "Failed genproto-verification!" >&2
|
|
printf "* Found changed files:\n%s\n" "$diff" >&2
|
|
echo "* Please rerun genproto.sh after changing *.proto file" >&2
|
|
echo "* Run ./scripts/genproto.sh" >&2
|
|
exit 1
|