airshipctl/tools/check_copyright
Dmitry Ukov cad8177fee Make API compatible with k8s apimachinary
Each object must implement runtime.Object interface. Therefore we
need DeepCopy methods implemented for each API struct.
Implementation is generated by controller-get utility.

Relates-To: #259
Change-Id: I535bf9ec3ff61597a778f73ca449313b7455b989
2020-06-23 13:01:16 +04:00

46 lines
1.3 KiB
Bash
Executable File

#!/bin/bash
# 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.
declare FILES_MISSING_COPYRIGHT=()
# Find all files of given format and add license if missing
check_license() {
ext=$1
# skipping license for testdata and manifests folders
FILES=$(find -L . -name "*.${ext}" | grep -vE "(testdata|manifests|zz_generated)")
for each in $FILES
do
if ! grep -Eq 'Apache License|License-Identifier: Apache' $each
then
FILES_MISSING_COPYRIGHT+=($each)
fi
done
}
check_license 'go'
check_license 'yaml'
check_license 'yml'
check_license 'sh'
if [ ${#FILES_MISSING_COPYRIGHT[@]} -gt 0 ]
then
echo "Copyright header missing for these files: ${FILES_MISSING_COPYRIGHT[@]}"
echo "please run make add-copyright"
exit 1
else
echo "no file with missing copyright header detected, make target completed successfully"
fi