diff --git a/hack/verify-description.sh b/hack/verify-description.sh index b65e06e9fbf..738034e48cd 100755 --- a/hack/verify-description.sh +++ b/hack/verify-description.sh @@ -34,17 +34,22 @@ find_files() { -o -wholename '*/third_party/*' \ -o -wholename '*/Godeps/*' \ \) -prune \ - \) -name '*.go' + \) -wholename '*pkg/api/v*/types.go' } -files=`find_files | egrep "pkg/api/v.[^/]*/types\.go"` +if [[ $# -eq 0 ]]; then + files=`find_files | egrep "pkg/api/v.[^/]*/types\.go"` +else + files=("${@}") +fi -for file in $files -do - if [[ "$("${KUBE_ROOT}/hooks/description.sh" "${file}")" -eq "0" ]]; then - echo "API file is missing the required field descriptions: ${file}" - result=1 - fi +for file in $files; do + if grep json: "${file}" | grep -v // | grep -v ,inline | grep -v -q description: ; then + echo "API file is missing the required field descriptions: ${file}" + result=1 + fi done exit ${result} + +# ex: ts=2 sw=2 et filetype=sh diff --git a/hooks/description.sh b/hooks/description.sh deleted file mode 100755 index 4d079406b35..00000000000 --- a/hooks/description.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/bin/bash - -# Copyright 2014 The Kubernetes Authors All rights reserved. -# -# 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. - -# Print 1 if the file in $1 is not in need of additional field descriptions, 0 otherwise. -FILE="$1" - -if grep json: "${FILE}" | grep -v // | grep -v ,inline | grep -v -q description: ; then - echo "0" -else - echo "1" -fi -exit 0 - diff --git a/hooks/pre-commit b/hooks/pre-commit index c3f05e50270..fa6a6882a87 100755 --- a/hooks/pre-commit +++ b/hooks/pre-commit @@ -60,8 +60,8 @@ files_need_description=() # Check API schema definitions for field descriptions for file in $(git diff --cached --name-only --diff-filter ACM | egrep "pkg/api/v.[^/]*/types\.go" | grep -v "third_party"); do # Check for files with fields without description tags - descriptionless=$("${KUBE_HOOKS_DIR}/description.sh" "${file}") - if [[ "$descriptionless" -eq "0" ]]; then + descriptionless=$(hack/verify-description.sh "${file}") + if [[ "$descriptionless" != "" ]]; then files_need_description+=("${file}") fi done @@ -141,3 +141,5 @@ if [[ "${exit_code}" != 0 ]]; then echo "${red}Aborting commit${reset}" fi exit ${exit_code} + +# ex: ts=2 sw=2 et filetype=sh