Use more specific dependencies than karaf-maven-plugin 65/32265/6
authorStephen Kitt <skitt@redhat.com>
Fri, 8 Jan 2016 09:54:04 +0000 (10:54 +0100)
committerStephen Kitt <skitt@redhat.com>
Fri, 12 Feb 2016 17:03:00 +0000 (17:03 +0000)
commit6688af5b7d46c4682ef0724b6466c6f98e80c1ed
tree74587ed54b711ecde6cd3b19a9247acea7ee4017
parent828514690ea54de9b7a20724ff76fb8aea9c5016
Use more specific dependencies than karaf-maven-plugin

PerRepoTestRunner currently relies on karaf-maven-plugin to provide a
URLStreamHandlerFactory. This involves pulling in all
karaf-maven-plugin's dependencies, which end up contributing to all
ODL projects' complex dependencies trees as soon as they start using
features-test.

To avoid this, copy CustomBundleURLStreamHandlerFactory from
karaf-maven-plugin; the code is trivial. This allows
karaf-maven-plugin to be removed from the dependencies, as long as the
specific deployers we need are added. I copied mvn, wrap, feature,
spring and blueprint for now. A number of other dependencies become
unnecessary as a result.

Another approach would be to exclude all the irrelevant dependencies
from karaf-maven-plugin but this feels more fragile to me. With our
own CustomBundleURLStreamHandlerFactory we get to decide what
protocols we want to support.

Change-Id: I6b660582d0fbca57d8f20c7dd53375884a982e10
Signed-off-by: Stephen Kitt <skitt@redhat.com>
Karaf-NOTICE [new file with mode: 0644]
features-test/pom.xml
features-test/src/main/java/org/opendaylight/odlparent/featuretest/CustomBundleURLStreamHandlerFactory.java [new file with mode: 0644]
features-test/src/main/java/org/opendaylight/odlparent/featuretest/PerRepoTestRunner.java
karaf-plugin/src/it/settings.xml