<parent>
<groupId>org.opendaylight.odlparent</groupId>
<artifactId>odlparent</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.1-SNAPSHOT</version>
<relativePath>../../odlparent</relativePath>
</parent>
<groupId>org.opendaylight.odlparent</groupId>
<artifactId>karaf4-parent</artifactId>
- <version>1.8.0-SNAPSHOT</version>
+ <version>1.9.1-SNAPSHOT</version>
<packaging>pom</packaging>
+ <name>ODL :: odlparent :: ${project.artifactId}</name>
<properties>
- <odlparent.version>1.8.0-SNAPSHOT</odlparent.version>
+ <!-- Projects can override this to add their own boot feature -->
+ <karaf.localFeature>standard</karaf.localFeature>
</properties>
<dependencyManagement>
<dependency>
<groupId>org.apache.karaf.features</groupId>
<artifactId>framework</artifactId>
- <version>${karaf4.version}</version>
+ <version>${karaf.version}</version>
<type>kar</type>
</dependency>
<dependency>
<groupId>org.apache.karaf.features</groupId>
<artifactId>framework</artifactId>
- <version>${karaf4.version}</version>
+ <version>${karaf.version}</version>
<classifier>features</classifier>
<type>xml</type>
</dependency>
<dependency>
<groupId>org.apache.karaf.features</groupId>
<artifactId>standard</artifactId>
- <version>${karaf4.version}</version>
- <classifier>features</classifier>
- <type>xml</type>
- </dependency>
- <dependency>
- <groupId>org.apache.karaf.features</groupId>
- <artifactId>spring</artifactId>
- <version>${karaf4.version}</version>
+ <version>${karaf.version}</version>
<classifier>features</classifier>
<type>xml</type>
</dependency>
<scope>runtime</scope>
</dependency>
<dependency>
- <groupId>org.apache.karaf.features</groupId>
- <artifactId>spring</artifactId>
- <classifier>features</classifier>
- <type>xml</type>
- <scope>runtime</scope>
+ <groupId>org.apache.aries.quiesce</groupId>
+ <artifactId>org.apache.aries.quiesce.api</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.osgi</groupId>
+ <!-- for https://bugs.opendaylight.org/show_bug.cgi?id=4290 -->
+ <artifactId>org.osgi.service.event</artifactId>
</dependency>
- <!-- Don't use ${project.version} here, properties are evaluated in the context
- of child projects -->
+
<!-- ODL Branding -->
<dependency>
<groupId>org.opendaylight.odlparent</groupId>
<artifactId>karaf.branding</artifactId>
- <version>${odlparent.version}</version>
- <scope>compile</scope>
</dependency>
<!-- ODL configuration -->
<dependency>
<groupId>org.opendaylight.odlparent</groupId>
- <artifactId>opendaylight-karaf4-resources</artifactId>
- <version>${odlparent.version}</version>
- <scope>provided</scope>
+ <artifactId>opendaylight-karaf-resources</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
- <groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<executions>
<execution>
</executions>
</plugin>
<plugin>
- <groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-remote-resources-plugin</artifactId>
<configuration>
<skip>true</skip>
<artifactItem>
<groupId>org.opendaylight.odlparent</groupId>
<artifactId>karaf.branding</artifactId>
- <version>${odlparent.version}</version>
+ <version>1.9.1-SNAPSHOT</version>
<outputDirectory>target/assembly/lib</outputDirectory>
- <destFileName>karaf.branding-${odlparent.version}.jar</destFileName>
+ <destFileName>karaf.branding-1.9.1-SNAPSHOT.jar</destFileName>
</artifactItem>
</artifactItems>
</configuration>
<configuration>
<outputDirectory>${project.build.directory}/assembly</outputDirectory>
<groupId>org.opendaylight.odlparent</groupId>
- <includeArtifactIds>opendaylight-karaf4-resources</includeArtifactIds>
+ <includeArtifactIds>opendaylight-karaf-resources</includeArtifactIds>
<excludes>META-INF\/**</excludes>
<excludeTransitive>true</excludeTransitive>
<ignorePermissions>false</ignorePermissions>
<artifactItems>
<artifactItem>
<groupId>org.opendaylight.odlparent</groupId>
- <artifactId>opendaylight-karaf4-resources</artifactId>
+ <artifactId>opendaylight-karaf-resources</artifactId>
<type>properties</type>
<classifier>config</classifier>
<overWrite>true</overWrite>
</execution>
</executions>
</plugin>
+
+ <!-- This needs to execute before patching, otherwise the feature will be left unpatched -->
+ <plugin>
+ <groupId>org.opendaylight.odlparent</groupId>
+ <artifactId>karaf4-plugin</artifactId>
+ <version>1.9.1-SNAPSHOT</version>
+ <executions>
+ <execution>
+ <id>populate-local-repo</id>
+ <goals>
+ <goal>populate-local-repo</goal>
+ </goals>
+ <configuration>
+ <localRepo>${project.build.directory}/assembly/system</localRepo>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<patch patchfile="${project.build.directory}/assembly/patches/karaf-instance.bat.patch"
originalfile="${project.build.directory}/assembly/bin/instance.bat"
failonerror="true" ignorewhitespace="true"/>
- <patch patchfile="${project.build.directory}/assembly/patches/karaf-karaf.patch"
+ <patch patchfile="${project.build.directory}/assembly/patches/karaf-karaf-${karaf.version}.patch"
originalfile="${project.build.directory}/assembly/bin/karaf"
failonerror="true"/>
<patch patchfile="${project.build.directory}/assembly/patches/karaf-karaf.bat.patch"
originalfile="${project.build.directory}/assembly/bin/karaf.bat"
failonerror="true"/>
- <patch patchfile="${project.build.directory}/assembly/patches/karaf-setenv.patch"
+ <patch patchfile="${project.build.directory}/assembly/patches/karaf-setenv-${karaf.version}.patch"
originalfile="${project.build.directory}/assembly/bin/setenv"
failonerror="true"/>
<patch patchfile="${project.build.directory}/assembly/patches/karaf-setenv.bat.patch"
originalfile="${project.build.directory}/assembly/bin/setenv.bat"
failonerror="true"/>
+ <patch patchfile="${project.build.directory}/assembly/patches/karaf-quiesce-${karaf.version}.patch"
+ originalfile="${project.build.directory}/assembly/system/org/apache/karaf/features/standard/${karaf.version}/standard-${karaf.version}-features.xml"
+ failonerror="true"/>
+ <patch patchfile="${project.build.directory}/assembly/patches/karaf-javax-mail-${karaf.version}.patch"
+ originalfile="${project.build.directory}/assembly/system/org/apache/karaf/features/standard/${karaf.version}/standard-${karaf.version}-features.xml"
+ failonerror="true"/>
+ <patch patchfile="${project.build.directory}/assembly/patches/karaf-paxweb.patch"
+ originalfile="${project.build.directory}/assembly/system/org/ops4j/pax/web/pax-web-features/4.3.0/pax-web-features-4.3.0-features.xml"
+ failonerror="true"/>
+ <patch patchfile="${project.build.directory}/assembly/patches/karaf-etc-startup-properties-4.0.9.patch"
+ originalfile="${project.build.directory}/assembly/etc/startup.properties"
+ failonerror="true"/>
<fixcrlf srcdir="${project.build.directory}/assembly/bin"
includes="*.bat" eol="crlf"/>
+ <echo file="${project.build.directory}/assembly/etc/system.properties" append="true">mvn\:org.osgi/org.osgi.service.event/1.3.1 = 8</echo>
</target>
</configuration>
</execution>
<plugin>
<groupId>org.apache.karaf.tooling</groupId>
<artifactId>karaf-maven-plugin</artifactId>
- <version>${karaf4.version}</version>
+ <version>${karaf.plugin.version}</version>
<executions>
<execution>
<id>process-resources</id>
<feature>wrapper</feature>
</installedFeatures>
<bootFeatures>
- <feature>framework</feature>
- <feature>jaas</feature>
- <feature>shell</feature>
- <feature>feature</feature>
- <feature>ssh</feature>
- <feature>management</feature>
- <feature>bundle</feature>
- <feature>config</feature>
- <feature>deployer</feature>
- <feature>diagnostic</feature>
- <feature>instance</feature>
- <feature>kar</feature>
- <feature>log</feature>
- <feature>package</feature>
- <feature>service</feature>
- <feature>system</feature>
+ <feature>standard</feature>
<!-- We load wrap as a workaround to handle old features without the wrap prerequisite -->
<!-- TODO Remove this once all the downstream features are fixed -->
<feature>wrap</feature>
+ <!-- Local feature if any -->
+ <feature>${karaf.localFeature}</feature>
</bootFeatures>
<javase>1.8</javase>
</configuration>
</plugin>
- <plugin>
- <groupId>org.opendaylight.odlparent</groupId>
- <artifactId>karaf4-plugin</artifactId>
- <version>1.8.0-SNAPSHOT</version>
- <executions>
- <execution>
- <id>populate-local-repo</id>
- <goals>
- <goal>populate-local-repo</goal>
- </goals>
- <configuration>
- <localRepo>${project.build.directory}/assembly/system</localRepo>
- </configuration>
- </execution>
- </executions>
- </plugin>
</plugins>
</build>
-</project>
\ No newline at end of file
+</project>