You are viewing a plain text version of this content. The canonical link for it is here.
Posted to gitbox@yetus.apache.org by aw...@apache.org on 2020/10/31 05:19:11 UTC
[yetus] 06/10: YETUS-1053. Add Apache Creadur RAT to the docker
image (#179)
This is an automated email from the ASF dual-hosted git repository.
aw pushed a commit to branch YETUS-1034-release
in repository https://gitbox.apache.org/repos/asf/yetus.git
commit 3b0e0983d6daf32114e2a85bb7a15add372a81be
Author: Allen Wittenauer <aw...@apache.org>
AuthorDate: Thu Oct 29 10:29:16 2020 -0700
YETUS-1053. Add Apache Creadur RAT to the docker image (#179)
---
.../in-progress/precommit/plugins/asflicense.html.md | 6 ++++--
precommit/src/main/shell/test-patch-docker/Dockerfile | 12 ++++++++++++
precommit/src/main/shell/test-patch.d/asflicense.sh | 4 +++-
3 files changed, 19 insertions(+), 3 deletions(-)
diff --git a/asf-site-src/source/documentation/in-progress/precommit/plugins/asflicense.html.md b/asf-site-src/source/documentation/in-progress/precommit/plugins/asflicense.html.md
index b7c8f3f..40829b9 100644
--- a/asf-site-src/source/documentation/in-progress/precommit/plugins/asflicense.html.md
+++ b/asf-site-src/source/documentation/in-progress/precommit/plugins/asflicense.html.md
@@ -27,7 +27,9 @@ Test
# Description
-Runs the [Apache Creadur](http://creadur.apache.org) project's [Rat](http://creadur.apache.org/rat/) code to verify software licensing. Currently, `ant`, `gradle`, and `maven` have built-in support. For other build tools, the rat jar will need to be provided.
+Runs the [Apache Creadur](http://creadur.apache.org) project's [Rat](http://creadur.apache.org/rat/) code to verify software licensing.
+Currently, `ant`, `gradle`, and `maven` have built-in support. The Apache Yetus container image also provides the jar file in /opt/apache-rat.
+For other build tools/scenarios, the rat jar will need to be provided.
# Environment Variables
@@ -38,7 +40,7 @@ None
| Option | Notes |
|:---------|:------|
| `--asflicense-rat-excludes=<path>` | When running rat outside of a build tool, specify the location of the exclusion file |
-| `--asflicense-rat-jar=<path` | When running rat outside of a build tool, specify the location of the Java jar file to execute |
+| `--asflicense-rat-jar=<path>` | When running rat outside of a build tool, specify the location of the Java jar file to execute. Defaults to /opt/apache-rat/apache-rat.jar |
# Docker Notes
diff --git a/precommit/src/main/shell/test-patch-docker/Dockerfile b/precommit/src/main/shell/test-patch-docker/Dockerfile
index 097b26b..bb0f7d8 100644
--- a/precommit/src/main/shell/test-patch-docker/Dockerfile
+++ b/precommit/src/main/shell/test-patch-docker/Dockerfile
@@ -100,6 +100,18 @@ RUN apt-get -q update && apt-get -q install --no-install-recommends -y ant \
&& rm -rf /var/lib/apt/lists/*
####
+# Install Apache Creadur RAT jar
+####
+RUN mkdir -p /opt/apache-rat \
+ && curl -f -s -L -o /tmp/rat.tgz \
+ 'https://www.apache.org/dyn/closer.cgi?action=download&filename=/creadur/apache-rat-0.13/apache-rat-0.13-bin.tar.gz' \
+ && shasum -a 512 /tmp/rat.tgz \
+ | awk '$1!="2c1e12eace7b80a9b6373c2f5080fbf63d3fa8d9248f3a17bd05de961cd3ca3c4549817b8b7320a84f0c323194edad0abdb86bdfec3976227a228e2143e14a54" {exit(1)}' \
+ && tar --strip-components 1 -C /opt/apache-rat -xpzf /tmp/rat.tgz \
+ && rm /tmp/rat.tgz \
+ && mv /opt/apache-rat/apache-rat-0.13.jar /opt/apache-rat/apache-rat.jar
+
+####
# Install GNU automake, GNU make, and related
####
RUN apt-get -q update && apt-get -q install --no-install-recommends -y autoconf automake libtool make \
diff --git a/precommit/src/main/shell/test-patch.d/asflicense.sh b/precommit/src/main/shell/test-patch.d/asflicense.sh
index 5b17549..d98466d 100755
--- a/precommit/src/main/shell/test-patch.d/asflicense.sh
+++ b/precommit/src/main/shell/test-patch.d/asflicense.sh
@@ -18,6 +18,8 @@
add_test_type asflicense
+ASFLICENSE_RAT_JAR=/opt/apache-rat/apache-rat.jar
+
function asflicense_usage
{
yetus_add_option "--asflicense-rat-excludes=<file>" "path to file containing exclusion patterns"
@@ -86,7 +88,7 @@ function asflicense_tests
btfails=false
;;
*)
- if [[ -z "${ASFLICENSE_RAT_JAR}" ]]; then
+ if [[ ! -f "${ASFLICENSE_RAT_JAR}" ]]; then
return 0
fi