blob: 1d0a0b1e7a44e817b28008172aeb1baff2e3a02b [file] [log] [blame]
#!/bin/bash
###############################################################################
# Copyright (c) 2020, 2021 Kichwa Coders Canada Inc and others.
#
# This program and the accompanying materials
# are made available under the terms of the Eclipse Public License 2.0
# which accompanies this distribution, and is available at
# https://www.eclipse.org/legal/epl-2.0/
#
# SPDX-License-Identifier: EPL-2.0
###############################################################################
set -e
# This script is used to check the current status of all dependencies to make sure no
# CQs need to be filed.
echo Generate the list of dependencies according to Maven
${MVN:-mvn} -B -V package dependency:list -DappendOutput=true -DoutputFile=$PWD/deps-raw.log >mvn-dependency-list.log 2>&1
echo Clean out the lines and whitespace that are not actually dependencies
cat deps-raw.log | grep -v "The following files have been resolved" | grep -v " none" | grep -Poh '[^ ]*' > deps-stripped.log
echo Sort and uniqify and store all deps in deps.log that will be passed to the tool
cat deps-stripped.log | sort -u > deps.log
if test -e dash-licenses; then
echo Pull and build Dash Licenses
(cd dash-licenses && git pull) >git-pull.log 2>&1
else
echo Clone and build Dash Licenses
git clone https://github.com/eclipse/dash-licenses.git >git-clone.log 2>&1
fi
${MVN:-mvn} -B -V -f dash-licenses clean package >dash-build.log 2>&1
echo Run the license check
exit_code=0
if ! java -jar dash-licenses/core/target/org.eclipse.dash.licenses-*-SNAPSHOT.jar deps.log >dash-licenses.log 2>&1; then
echo Some licenses appear to have failed a check, review output below.
exit_code=1
fi
echo See *.log for various outputs. The key one is dash-licenses.log which is the summary and repeated below:
echo ============ dash-licenses.log ============
cat dash-licenses.log
exit $exit_code