verify zz_generated_range_data.go is up to date
This commit is contained in:
parent
98996f191f
commit
7f2fec0579
5
Makefile
5
Makefile
|
|
@ -102,6 +102,9 @@ gofmt:
|
|||
# run linters, ensure generated code, etc.
|
||||
verify:
|
||||
hack/make-rules/verify.sh
|
||||
# verify generated files, subset of verify
|
||||
verify-generated:
|
||||
hack/make-rules/verify-generated.sh
|
||||
# code linters
|
||||
lint:
|
||||
hack/make-rules/lint.sh
|
||||
|
|
@ -109,4 +112,4 @@ lint:
|
|||
shellcheck:
|
||||
hack/make-rules/shellcheck.sh
|
||||
#################################################################################
|
||||
.PHONY: all archeio build unit integration clean update gofmt verify lint shellcheck
|
||||
.PHONY: all archeio build unit integration clean update gofmt verify verify-generated lint shellcheck
|
||||
|
|
|
|||
|
|
@ -0,0 +1,37 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright 2022 The Kubernetes Authors.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
# script to verify generated files
|
||||
set -o errexit -o nounset -o pipefail
|
||||
|
||||
# cd to the repo root and setup go
|
||||
REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." &> /dev/null && pwd -P)"
|
||||
cd "${REPO_ROOT}"
|
||||
source hack/tools/setup-go.sh
|
||||
|
||||
tmpdir=$(mktemp -d)
|
||||
trap 'rm -rf ${tmpdir?}' EXIT
|
||||
|
||||
# generate and compare
|
||||
OUT_FILE="${tmpdir}"/zz_generated_range_data.go
|
||||
export OUT_FILE
|
||||
./pkg/net/cidrs/aws/internal/ranges2go/run.sh
|
||||
|
||||
if ! diff "${OUT_FILE}" ./pkg/net/cidrs/aws/zz_generated_range_data.go; then
|
||||
>&2 echo ""
|
||||
>&2 echo "generated file is out of date, please run 'go generate ./...' to regenerate"
|
||||
exit 1
|
||||
fi
|
||||
|
|
@ -26,24 +26,30 @@ res=0
|
|||
# run all verify scripts, optionally skipping any of them
|
||||
|
||||
if [[ "${VERIFY_LINT:-true}" == "true" ]]; then
|
||||
echo "verifying lints ..."
|
||||
>&2 echo "verifying lints ..."
|
||||
hack/make-rules/lint.sh || res=1
|
||||
cd "${REPO_ROOT}"
|
||||
fi
|
||||
|
||||
if [[ "${VERIFY_SHELLCHECK:-true}" == "true" ]]; then
|
||||
echo "verifying shellcheck ..."
|
||||
>&2 echo "verifying shellcheck ..."
|
||||
hack/make-rules/shellcheck.sh || res=1
|
||||
cd "${REPO_ROOT}"
|
||||
fi
|
||||
|
||||
if [[ "${VERIFY_GENERATED:-true}" == "true" ]]; then
|
||||
>&2 echo "Verifying generated ..."
|
||||
hack/make-rules/verify-generated.sh || res=1
|
||||
cd "${REPO_ROOT}"
|
||||
fi
|
||||
|
||||
# exit based on verify scripts
|
||||
if [[ "${res}" = 0 ]]; then
|
||||
echo ""
|
||||
echo "All verify checks passed, congrats!"
|
||||
>&2 echo ""
|
||||
>&2 echo "All verify checks passed, congrats!"
|
||||
else
|
||||
echo ""
|
||||
echo "One or more verify checks failed! See output above..."
|
||||
>&2 echo ""
|
||||
>&2 echo "One or more verify checks failed! See output above..."
|
||||
fi
|
||||
exit "${res}"
|
||||
|
||||
|
|
|
|||
|
|
@ -21,6 +21,12 @@ package main
|
|||
import "os"
|
||||
|
||||
func main() {
|
||||
// overridable for make verify
|
||||
outputPath := os.Getenv("OUT_FILE")
|
||||
if outputPath == "" {
|
||||
outputPath = "./zz_generated_range_data.go"
|
||||
}
|
||||
// parse raw AWS IP range data
|
||||
parsed, err := parseIPRangesJSON([]byte(ipRangesRaw))
|
||||
if err != nil {
|
||||
panic(err)
|
||||
|
|
@ -30,7 +36,7 @@ func main() {
|
|||
panic(err)
|
||||
}
|
||||
// emit file
|
||||
f, err := os.Create("./zz_generated_range_data.go")
|
||||
f, err := os.Create(outputPath)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue