constellation/hack/check-licenses.sh
Thomas Tendyck aa0a07592b check licenses (#297)
* AB#2222 check licenses of dependencies

* AB#2222 check-licenses: use setup-go
2022-07-26 11:49:13 +02:00

53 lines
774 B
Bash
Executable File

#!/bin/bash
# Compare licenses of Go dependencies against a whitelist.
set -e -o pipefail
not_allowed() {
echo "license not allowed for package: $line"
err=1
}
go mod download
go-licenses csv ./... | {
while read line; do
pkg=${line%%,*}
lic=${line##*,}
case $lic in
Apache-2.0|BSD-2-Clause|BSD-3-Clause|ISC|MIT)
;;
MPL-2.0)
case $pkg in
github.com/talos-systems/talos/pkg/machinery/config/encoder)
;;
*)
not_allowed
;;
esac
;;
Unknown)
case $pkg in
github.com/edgelesssys/constellation/*)
;;
*)
not_allowed
;;
esac
;;
*)
echo "unknown license: $line"
err=1
;;
esac
done
exit $err
}