mirror of
https://github.com/tendermint/tendermint.git
synced 2026-01-06 21:36:26 +00:00
* update to 1.18 Co-authored-by: William Banfield <4561443+williambanfield@users.noreply.github.com>
76 lines
2.3 KiB
YAML
76 lines
2.3 KiB
YAML
# Verify that generated code is up-to-date.
|
|
#
|
|
# Note that we run these checks regardless whether the input files have
|
|
# changed, because generated code can change in response to toolchain updates
|
|
# even if no files in the repository are modified.
|
|
name: Check generated code
|
|
on:
|
|
pull_request:
|
|
branches:
|
|
- main
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
jobs:
|
|
check-mocks:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/setup-go@v3
|
|
with:
|
|
go-version: '1.18'
|
|
|
|
- uses: actions/checkout@v3
|
|
|
|
- name: "Check generated mocks"
|
|
run: |
|
|
set -euo pipefail
|
|
|
|
readonly MOCKERY=2.12.3 # N.B. no leading "v"
|
|
curl -sL "https://github.com/vektra/mockery/releases/download/v${MOCKERY}/mockery_${MOCKERY}_Linux_x86_64.tar.gz" | tar -C /usr/local/bin -xzf -
|
|
make mockery 2>/dev/null
|
|
|
|
if ! git diff --stat --exit-code ; then
|
|
echo ">> ERROR:"
|
|
echo ">>"
|
|
echo ">> Generated mocks require update (either Mockery or source files may have changed)."
|
|
echo ">> Ensure your tools are up-to-date, re-run 'make mockery' and update this PR."
|
|
echo ">>"
|
|
exit 1
|
|
fi
|
|
|
|
check-proto:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/setup-go@v3
|
|
with:
|
|
go-version: '1.18'
|
|
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
fetch-depth: 1 # we need a .git directory to run git diff
|
|
|
|
- name: "Check protobuf generated code"
|
|
run: |
|
|
set -euo pipefail
|
|
|
|
# Install buf and gogo tools, so that differences that arise from
|
|
# toolchain differences are also caught.
|
|
readonly tools="$(mktemp -d)"
|
|
export PATH="${PATH}:${tools}/bin"
|
|
export GOBIN="${tools}/bin"
|
|
|
|
go install github.com/bufbuild/buf/cmd/buf
|
|
go install github.com/gogo/protobuf/protoc-gen-gogofaster@latest
|
|
|
|
make proto-gen
|
|
|
|
if ! git diff --stat --exit-code ; then
|
|
echo ">> ERROR:"
|
|
echo ">>"
|
|
echo ">> Protobuf generated code requires update (either tools or .proto files may have changed)."
|
|
echo ">> Ensure your tools are up-to-date, re-run 'make proto-gen' and update this PR."
|
|
echo ">>"
|
|
exit 1
|
|
fi
|