github.com/nginxinc/kubernetes-ingress@v1.12.5/hack/verify-codegen.sh (about) 1 #!/usr/bin/env bash 2 3 # Copyright 2017 The Kubernetes Authors. 4 # 5 # Licensed under the Apache License, Version 2.0 (the "License"); 6 # you may not use this file except in compliance with the License. 7 # You may obtain a copy of the License at 8 # 9 # http://www.apache.org/licenses/LICENSE-2.0 10 # 11 # Unless required by applicable law or agreed to in writing, software 12 # distributed under the License is distributed on an "AS IS" BASIS, 13 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 # See the License for the specific language governing permissions and 15 # limitations under the License. 16 17 set -o errexit 18 set -o nounset 19 set -o pipefail 20 21 SCRIPT_ROOT=$(dirname "${BASH_SOURCE[0]}")/.. 22 23 DIFFROOT="${SCRIPT_ROOT}/pkg" 24 TMP_DIFFROOT="${SCRIPT_ROOT}/_tmp/pkg" 25 _tmp="${SCRIPT_ROOT}/_tmp" 26 27 cleanup() { 28 rm -rf "${_tmp}" 29 } 30 trap "cleanup" EXIT SIGINT 31 32 cleanup 33 34 mkdir -p "${TMP_DIFFROOT}" 35 cp -a "${DIFFROOT}"/* "${TMP_DIFFROOT}" 36 37 "${SCRIPT_ROOT}/hack/update-codegen.sh" 38 echo "diffing ${DIFFROOT} against freshly generated codegen" 39 ret=0 40 diff -Naupr "${DIFFROOT}" "${TMP_DIFFROOT}" || ret=$? 41 cp -a "${TMP_DIFFROOT}"/* "${DIFFROOT}" 42 if [[ $ret -eq 0 ]] 43 then 44 echo "${DIFFROOT} up to date." 45 else 46 echo "${DIFFROOT} is out of date. Please run hack/update-codegen.sh" 47 exit 1 48 fi