You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flink.apache.org by ch...@apache.org on 2021/05/07 08:26:36 UTC
[flink] 01/04: [FLINK-22560][build] Move generic
filters/transformers into general shade-plugin configuration
This is an automated email from the ASF dual-hosted git repository.
chesnay pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/flink.git
commit 6f86326a07d18fb1ca32bfa8e30ef464cba554bf
Author: Chesnay Schepler <ch...@apache.org>
AuthorDate: Wed May 5 12:51:09 2021 +0200
[FLINK-22560][build] Move generic filters/transformers into general shade-plugin configuration
---
flink-connectors/flink-connector-cassandra/pom.xml | 5 ++-
flink-dist/pom.xml | 33 +--------------
flink-kubernetes/pom.xml | 2 +-
pom.xml | 48 +++++++++++++---------
4 files changed, 35 insertions(+), 53 deletions(-)
diff --git a/flink-connectors/flink-connector-cassandra/pom.xml b/flink-connectors/flink-connector-cassandra/pom.xml
index 9aa0fc4..850f38e 100644
--- a/flink-connectors/flink-connector-cassandra/pom.xml
+++ b/flink-connectors/flink-connector-cassandra/pom.xml
@@ -63,8 +63,9 @@ under the License.
<goals>
<goal>shade</goal>
</goals>
- <configuration combine.self="override">
- <dependencyReducedPomLocation>${project.basedir}/target/dependency-reduced-pom.xml</dependencyReducedPomLocation>
+ <configuration>
+ <!-- This is necessary because we bundle a subset of our dependencies,
+ and transitive dependencies of that subset should still be pulled into the user jar.-->
<promoteTransitiveDependencies>true</promoteTransitiveDependencies>
<artifactSet>
<includes>
diff --git a/flink-dist/pom.xml b/flink-dist/pom.xml
index c0c3bd6..4a546b3 100644
--- a/flink-dist/pom.xml
+++ b/flink-dist/pom.xml
@@ -679,7 +679,7 @@ under the License.
<goals>
<goal>shade</goal>
</goals>
- <configuration combine.self="override">
+ <configuration>
<createDependencyReducedPom>false</createDependencyReducedPom>
<shadedArtifactAttached>false</shadedArtifactAttached>
<finalName>${project.artifactId}-${project.version}</finalName>
@@ -688,11 +688,6 @@ under the License.
<filter>
<artifact>*</artifact>
<excludes>
- <exclude>log4j.properties</exclude>
- <exclude>log4j-test.properties</exclude>
- <exclude>META-INF/*.SF</exclude>
- <exclude>META-INF/*.DSA</exclude>
- <exclude>META-INF/*.RSA</exclude>
<exclude>org/apache/flink/runtime/util/bash/BashJavaUtils.class</exclude>
</excludes>
</filter>
@@ -709,12 +704,6 @@ under the License.
<transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
<resource>reference.conf</resource>
</transformer>
- <!-- The service transformer is needed to merge META-INF/services files -->
- <transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
- <transformer implementation="org.apache.maven.plugins.shade.resource.ApacheNoticeResourceTransformer">
- <projectName>Apache Flink</projectName>
- <encoding>UTF-8</encoding>
- </transformer>
</transformers>
</configuration>
</execution>
@@ -734,22 +723,11 @@ under the License.
<goals>
<goal>shade</goal>
</goals>
- <configuration combine.self="override">
+ <configuration>
<createDependencyReducedPom>false</createDependencyReducedPom>
<shadedArtifactAttached>false</shadedArtifactAttached>
<finalName>bash-java-utils</finalName>
<filters>
- <!-- Globally exclude log4j.properties from our JAR files. -->
- <filter>
- <artifact>*</artifact>
- <excludes>
- <exclude>log4j.properties</exclude>
- <exclude>log4j-test.properties</exclude>
- <exclude>META-INF/*.SF</exclude>
- <exclude>META-INF/*.DSA</exclude>
- <exclude>META-INF/*.RSA</exclude>
- </excludes>
- </filter>
<!-- Include only the BashJavaUtils, other required classes should come from the flink-dist-->
<filter>
<artifact>org.apache.flink:*</artifact>
@@ -770,13 +748,6 @@ under the License.
<resource>log4j2.properties</resource>
<file>src/main/resources/log4j-bash-utils.properties</file>
</transformer>
- <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
- <resource>reference.conf</resource>
- </transformer>
- <transformer implementation="org.apache.maven.plugins.shade.resource.ApacheNoticeResourceTransformer">
- <projectName>Apache Flink</projectName>
- <encoding>UTF-8</encoding>
- </transformer>
</transformers>
</configuration>
</execution>
diff --git a/flink-kubernetes/pom.xml b/flink-kubernetes/pom.xml
index 3ad188d..04df35f 100644
--- a/flink-kubernetes/pom.xml
+++ b/flink-kubernetes/pom.xml
@@ -129,7 +129,7 @@ under the License.
<goals>
<goal>shade</goal>
</goals>
- <configuration combine.children="append">
+ <configuration>
<artifactSet>
<includes combine.children="append">
<include>io.fabric8:kubernetes-client</include>
diff --git a/pom.xml b/pom.xml
index c84a291..f46d0ac 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1726,6 +1726,35 @@ under the License.
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
+ <configuration>
+ <!-- This section contains the core configuration that is applied to every jar that we create.-->
+ <filters combine.children="append">
+ <filter>
+ <artifact>*</artifact>
+ <excludes>
+ <!-- Globally exclude log4j.properties from our JAR files. -->
+ <exclude>log4j.properties</exclude>
+ <exclude>log4j2.properties</exclude>
+ <exclude>log4j-test.properties</exclude>
+ <exclude>log4j2-test.properties</exclude>
+ <!-- Do not copy the signatures in the META-INF folder.
+ Otherwise, this might cause SecurityExceptions when using the JAR. -->
+ <exclude>META-INF/*.SF</exclude>
+ <exclude>META-INF/*.DSA</exclude>
+ <exclude>META-INF/*.RSA</exclude>
+ </excludes>
+ </filter>
+ </filters>
+ <transformers combine.children="append">
+ <!-- The service transformer is needed to merge META-INF/services files -->
+ <transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
+ <!-- The ApacheNoticeResourceTransformer collects and aggregates NOTICE files -->
+ <transformer implementation="org.apache.maven.plugins.shade.resource.ApacheNoticeResourceTransformer">
+ <projectName>Apache Flink</projectName>
+ <encoding>UTF-8</encoding>
+ </transformer>
+ </transformers>
+ </configuration>
<executions>
<execution>
<id>shade-flink</id>
@@ -1740,16 +1769,6 @@ under the License.
<dependencyReducedPomLocation>${project.basedir}/target/dependency-reduced-pom.xml</dependencyReducedPomLocation>
<!-- Filters MUST be appended; merging filters does not work properly, see MSHADE-305 -->
<filters combine.children="append">
- <!-- Globally exclude log4j.properties from our JAR files. -->
- <filter>
- <artifact>*</artifact>
- <excludes>
- <exclude>log4j.properties</exclude>
- <exclude>log4j2.properties</exclude>
- <exclude>log4j-test.properties</exclude>
- <exclude>log4j2-test.properties</exclude>
- </excludes>
- </filter>
<!-- drop entries into META-INF and NOTICE files for the dummy artifact -->
<filter>
<artifact>org.apache.flink:force-shading</artifact>
@@ -1776,15 +1795,6 @@ under the License.
<include>org.apache.flink:force-shading</include>
</includes>
</artifactSet>
- <transformers combine.children="append">
- <!-- The service transformer is needed to merge META-INF/services files -->
- <transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
- <!-- The ApacheNoticeResourceTransformer collects and aggregates NOTICE files -->
- <transformer implementation="org.apache.maven.plugins.shade.resource.ApacheNoticeResourceTransformer">
- <projectName>Apache Flink</projectName>
- <encoding>UTF-8</encoding>
- </transformer>
- </transformers>
</configuration>
</execution>
</executions>