Merge pull request #1004 from dashpay/release_1.4.0 #814
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# 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: | |
paths: | |
- "**.go" | |
- "**.proto" | |
push: | |
branches: | |
- master | |
- v[0-9]+.[0-9]+-dev | |
permissions: | |
contents: read | |
jobs: | |
check-mocks: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/[email protected] | |
with: | |
go-version: "1.23.2" | |
- uses: actions/checkout@v4 | |
- name: "Check generated mocks" | |
run: | | |
set -euo pipefail | |
readonly MOCKERY=2.50.0 # 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 --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/[email protected] | |
with: | |
go-version: "1.23.2" | |
- uses: actions/checkout@v4 | |
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 |