You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jackrabbit.apache.org by tr...@apache.org on 2017/11/27 01:29:57 UTC
svn commit: r1816404 - in
/jackrabbit/commons/filevault-package-maven-plugin/trunk/src:
main/java/org/apache/jackrabbit/filevault/maven/packaging/
test/resources/test-content/
test/resources/test-projects/validate-deps-projects/fail-missing-deps-implic...
Author: tripod
Date: Mon Nov 27 01:29:57 2017
New Revision: 1816404
URL: http://svn.apache.org/viewvc?rev=1816404&view=rev
Log:
JCRVLT-219 Internal ancestors not used for dependency validation
Added:
jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-content/test-package-exclude.zip
Modified:
jackrabbit/commons/filevault-package-maven-plugin/trunk/src/main/java/org/apache/jackrabbit/filevault/maven/packaging/DependencyValidator.java
jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/validate-deps-projects/fail-missing-deps-implicit/META-INF/vault/filter.xml
jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/validate-deps-projects/fail-missing-deps/pom.xml
jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/validate-deps-projects/fail-no-contains/pom.xml
jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/validate-deps-projects/no-error-cleanup-filter/pom.xml
jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/validate-deps-projects/no-error-cleanup/pom.xml
jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/validate-deps-projects/no-errors/pom.xml
jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/validate-deps-projects/repo-structure-pkg/pom.xml
Modified: jackrabbit/commons/filevault-package-maven-plugin/trunk/src/main/java/org/apache/jackrabbit/filevault/maven/packaging/DependencyValidator.java
URL: http://svn.apache.org/viewvc/jackrabbit/commons/filevault-package-maven-plugin/trunk/src/main/java/org/apache/jackrabbit/filevault/maven/packaging/DependencyValidator.java?rev=1816404&r1=1816403&r2=1816404&view=diff
==============================================================================
--- jackrabbit/commons/filevault-package-maven-plugin/trunk/src/main/java/org/apache/jackrabbit/filevault/maven/packaging/DependencyValidator.java (original)
+++ jackrabbit/commons/filevault-package-maven-plugin/trunk/src/main/java/org/apache/jackrabbit/filevault/maven/packaging/DependencyValidator.java Mon Nov 27 01:29:57 2017
@@ -41,6 +41,8 @@ public class DependencyValidator {
private List<String> errors = new LinkedList<String>();
+ private static Set<String> VALID_ROOTS = new HashSet<>(Arrays.asList("", "/", "/libs", "/apps", "/etc", "/var", "/tmp", "/content"));
+
public DependencyValidator addDependencies(Dependency ... dependencies) {
this.dependencies.addAll(Arrays.asList(dependencies));
return this;
@@ -89,8 +91,13 @@ public class DependencyValidator {
continue;
}
String root = StringUtils.substringBeforeLast(set.getRoot(), "/");
- // ignore root node as ancestor
- if ("/".equals(root)) {
+ // ignore well known roots
+ if (VALID_ROOTS.contains(root)) {
+ continue;
+ }
+
+ // check if this package already contains the ancestor
+ if (filters.contains(root)) {
continue;
}
ancestors.add(root);
Added: jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-content/test-package-exclude.zip
URL: http://svn.apache.org/viewvc/jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-content/test-package-exclude.zip?rev=1816404&view=auto
==============================================================================
Binary files jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-content/test-package-exclude.zip (added) and jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-content/test-package-exclude.zip Mon Nov 27 01:29:57 2017 differ
Modified: jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/validate-deps-projects/fail-missing-deps-implicit/META-INF/vault/filter.xml
URL: http://svn.apache.org/viewvc/jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/validate-deps-projects/fail-missing-deps-implicit/META-INF/vault/filter.xml?rev=1816404&r1=1816403&r2=1816404&view=diff
==============================================================================
--- jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/validate-deps-projects/fail-missing-deps-implicit/META-INF/vault/filter.xml (original)
+++ jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/validate-deps-projects/fail-missing-deps-implicit/META-INF/vault/filter.xml Mon Nov 27 01:29:57 2017
@@ -16,5 +16,5 @@
limitations under the License.
-->
<workspaceFilter version="1.0">
- <filter root="/apps/test"/>
+ <filter root="/apps/test/foo"/>
</workspaceFilter>
Modified: jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/validate-deps-projects/fail-missing-deps/pom.xml
URL: http://svn.apache.org/viewvc/jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/validate-deps-projects/fail-missing-deps/pom.xml?rev=1816404&r1=1816403&r2=1816404&view=diff
==============================================================================
--- jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/validate-deps-projects/fail-missing-deps/pom.xml (original)
+++ jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/validate-deps-projects/fail-missing-deps/pom.xml Mon Nov 27 01:29:57 2017
@@ -33,7 +33,7 @@
<failOnDependencyErrors>true</failOnDependencyErrors>
<filters>
<filter>
- <root>/libs/foo</root>
+ <root>/libs/foo/bar</root>
</filter>
</filters>
</configuration>
Modified: jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/validate-deps-projects/fail-no-contains/pom.xml
URL: http://svn.apache.org/viewvc/jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/validate-deps-projects/fail-no-contains/pom.xml?rev=1816404&r1=1816403&r2=1816404&view=diff
==============================================================================
--- jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/validate-deps-projects/fail-no-contains/pom.xml (original)
+++ jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/validate-deps-projects/fail-no-contains/pom.xml Mon Nov 27 01:29:57 2017
@@ -48,6 +48,14 @@
</build>
<dependencies>
<dependency>
+ <!--
+ Test Package contains:
+
+ <workspaceFilter version="1.0">
+ <filter root="/tmp" />
+ <filter root="/var/foo/bar"/>
+ </workspaceFilter>
+ -->
<groupId>com.apache.jackrabbit.filevault</groupId>
<artifactId>test.content.package</artifactId>
<version>1.0.0</version>
Modified: jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/validate-deps-projects/no-error-cleanup-filter/pom.xml
URL: http://svn.apache.org/viewvc/jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/validate-deps-projects/no-error-cleanup-filter/pom.xml?rev=1816404&r1=1816403&r2=1816404&view=diff
==============================================================================
--- jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/validate-deps-projects/no-error-cleanup-filter/pom.xml (original)
+++ jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/validate-deps-projects/no-error-cleanup-filter/pom.xml Mon Nov 27 01:29:57 2017
@@ -30,6 +30,7 @@
<version>${plugin.version}</version>
<extensions>true</extensions>
<configuration>
+ <packageType>application</packageType>
<failOnDependencyErrors>true</failOnDependencyErrors>
<filterSource>${project.basedir}/filter.xml</filterSource>
</configuration>
Modified: jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/validate-deps-projects/no-error-cleanup/pom.xml
URL: http://svn.apache.org/viewvc/jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/validate-deps-projects/no-error-cleanup/pom.xml?rev=1816404&r1=1816403&r2=1816404&view=diff
==============================================================================
--- jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/validate-deps-projects/no-error-cleanup/pom.xml (original)
+++ jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/validate-deps-projects/no-error-cleanup/pom.xml Mon Nov 27 01:29:57 2017
@@ -30,6 +30,7 @@
<version>${plugin.version}</version>
<extensions>true</extensions>
<configuration>
+ <packageType>application</packageType>
<failOnDependencyErrors>true</failOnDependencyErrors>
<filters>
<filter>
Modified: jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/validate-deps-projects/no-errors/pom.xml
URL: http://svn.apache.org/viewvc/jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/validate-deps-projects/no-errors/pom.xml?rev=1816404&r1=1816403&r2=1816404&view=diff
==============================================================================
--- jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/validate-deps-projects/no-errors/pom.xml (original)
+++ jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/validate-deps-projects/no-errors/pom.xml Mon Nov 27 01:29:57 2017
@@ -30,20 +30,38 @@
<version>${plugin.version}</version>
<extensions>true</extensions>
<configuration>
+ <packageType>application</packageType>
<failOnDependencyErrors>true</failOnDependencyErrors>
<filters>
+ <!-- root should always be covered -->
+ <filter><root>/var</root></filter>
+
+ <!-- those are covered by test-package -->
+ <filter><root>/var/foo/bar/components</root></filter>
+ <filter><root>/tmp/foo</root></filter>
+
+ <!-- /libs and /apps should always be covered -->
+ <filter><root>/libs/foo</root></filter>
+ <filter><root>/apps/foo</root></filter>
+
+ <!-- test internal ancestors that are exclude by dependent package -->
<filter>
- <root>/var/foo/bar/components</root>
- </filter>
- <filter>
- <root>/tmp/foo</root>
+ <root>/libs/foo/bar</root>
+ <includes>
+ <include>/libs/foo/bar</include>
+ </includes>
</filter>
+ <filter><root>/libs/foo/bar/sub</root></filter>
</filters>
<dependencies>
<dependency>
<groupId>com.apache.jackrabbit.filevault</groupId>
<artifactId>test.content.package</artifactId>
</dependency>
+ <dependency>
+ <groupId>com.apache.jackrabbit.filevault</groupId>
+ <artifactId>test.content.package.exclude</artifactId>
+ </dependency>
</dependencies>
</configuration>
</plugin>
@@ -51,6 +69,12 @@
</build>
<dependencies>
<dependency>
+ <!--
+ <workspaceFilter version="1.0">
+ <filter root="/tmp" />
+ <filter root="/var/foo/bar"/>
+ </workspaceFilter>
+ -->
<groupId>com.apache.jackrabbit.filevault</groupId>
<artifactId>test.content.package</artifactId>
<version>1.0.0</version>
@@ -58,5 +82,20 @@
<systemPath>${testcontent.directory}/test-package.zip</systemPath>
<type>zip</type>
</dependency>
+ <dependency>
+ <!--
+ <workspaceFilter version="1.0">
+ <filter root="/libs/foo">
+ <exclude pattern="/libs/foo/bar(/.*)?"/>
+ </filter>
+ </workspaceFilter>
+ -->
+ <groupId>com.apache.jackrabbit.filevault</groupId>
+ <artifactId>test.content.package.exclude</artifactId>
+ <version>1.0.0</version>
+ <scope>system</scope>
+ <systemPath>${testcontent.directory}/test-package-exclude.zip</systemPath>
+ <type>zip</type>
+ </dependency>
</dependencies>
</project>
Modified: jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/validate-deps-projects/repo-structure-pkg/pom.xml
URL: http://svn.apache.org/viewvc/jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/validate-deps-projects/repo-structure-pkg/pom.xml?rev=1816404&r1=1816403&r2=1816404&view=diff
==============================================================================
--- jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/validate-deps-projects/repo-structure-pkg/pom.xml (original)
+++ jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/validate-deps-projects/repo-structure-pkg/pom.xml Mon Nov 27 01:29:57 2017
@@ -30,6 +30,7 @@
<version>${plugin.version}</version>
<extensions>true</extensions>
<configuration>
+ <packageType>application</packageType>
<failOnDependencyErrors>true</failOnDependencyErrors>
<filters>
<filter>