summaryrefslogtreecommitdiff
path: root/vendor/github.com/golang/mock/ci/check_go_generate.sh
blob: a0212e28a3dba1b713b94f8ceec25d01a845dbfc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#!/bin/bash
# This script is used by the CI to check if 'go generate ./...' is up to date.
#
# Note: If the generated files aren't up to date then this script updates
# them despite printing an error message so running it the second time
# might not print any errors. This isn't very useful locally during development
# but it works well with the CI that downloads a fresh version of the repo
# each time before executing this script.

set -euo pipefail

TEMP_DIR=$( mktemp -d )
function cleanup() {
    rm -rf "${TEMP_DIR}"
}
trap cleanup EXIT

cp -r . "${TEMP_DIR}/"
go generate ./...
if ! diff -r . "${TEMP_DIR}"; then
    echo
    echo "The generated files aren't up to date."
    echo "Update them with the 'go generate ./...' command."
    exit 1
fi