forked from quic-go/quic-go
use a text-based comparison in the go-generate workflow
This commit is contained in:
21
.github/workflows/go-generate.sh
vendored
21
.github/workflows/go-generate.sh
vendored
@@ -2,7 +2,14 @@
|
|||||||
|
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
find . -type f -name "*.go" -exec shasum {} \; > checksums_before.txt
|
DIR=$(pwd)
|
||||||
|
TMP=$(mktemp -d)
|
||||||
|
cd "$TMP"
|
||||||
|
mkdir orig generated
|
||||||
|
cp -r "$DIR" orig
|
||||||
|
cp -r "$DIR" generated
|
||||||
|
|
||||||
|
cd generated
|
||||||
# delete all go-generated files generated (that adhere to the comment convention)
|
# delete all go-generated files generated (that adhere to the comment convention)
|
||||||
grep --include \*.go -lrIZ "^// Code generated .* DO NOT EDIT\.$" . | xargs --null rm
|
grep --include \*.go -lrIZ "^// Code generated .* DO NOT EDIT\.$" . | xargs --null rm
|
||||||
# delete all files generated by Genny
|
# delete all files generated by Genny
|
||||||
@@ -11,11 +18,7 @@ grep --include \*.go -lrIZ "This file was automatically generated by genny." . |
|
|||||||
grep --include \*.go -lrI "//go:generate genny" | xargs -L 1 go generate
|
grep --include \*.go -lrI "//go:generate genny" | xargs -L 1 go generate
|
||||||
# now generate everything
|
# now generate everything
|
||||||
go generate ./...
|
go generate ./...
|
||||||
find . -type f -name "*.go" -exec shasum {} \; > checksums_after.txt
|
cd ..
|
||||||
DIFF=$(diff checksums_before.txt checksums_after.txt) || true
|
|
||||||
echo "$DIFF"
|
# don't compare fuzzing corpora
|
||||||
if [ -n "$DIFF" ]; then
|
diff --exclude=corpus -ruN orig generated
|
||||||
exit 1
|
|
||||||
else
|
|
||||||
echo "All generated files match."
|
|
||||||
fi
|
|
||||||
|
|||||||
Reference in New Issue
Block a user