#!/usr/bin/env bash # Compare licenses of Go dependencies against a whitelist. ###### script header ###### lib=$(realpath @@BASE_LIB@@) || exit 1 stat "${lib}" >> /dev/null || exit 1 # shellcheck source=../sh/lib.bash if ! source "${lib}"; then echo "Error: could not find import" exit 1 fi cd "${BUILD_WORKSPACE_DIRECTORY}" ###### script body ###### echo "Checking files for missing company license header..." noHeader=$( grep \ -rL \ --include='*.go' \ --exclude-dir 3rdparty \ --exclude-dir build \ -e'SPDX-License-Identifier: AGPL-3.0-only' \ -e'DO NOT EDIT' | { grep -v internal/cloud/openstack/clouds || true; } ) if [[ -z ${noHeader} ]]; then exit 0 fi echo "The following files are missing a license header:" readarray -t <<< "${noHeader}" for file in "${MAPFILE[@]}"; do echo " ${file}" done exit 1