This module is part of the Apache Sling project.
This plugin allows starting and stopping feature model applications without blocking the Maven execution. It is intended mainly for usage with integration tests. The full Maven site documenting this plugin is at https://sling.apache.org/components/sling-feature-launcher-maven-plugin/.
Configure the plugin as follows:
<plugin> <groupId>org.apache.sling</groupId> <artifactId>feature-launcher-maven-plugin</artifactId> <configuration> <launches> <launch> <id>model</id> <!-- optionally uncomment to skip this launch if the skip property resolves to false --> <!-- <skip>${prop1.skip}</skip> --> <feature> <groupId>org.apache.sling</groupId> <artifactId>org.apache.sling.starter</artifactId> <version>12</version> <classifier>oak_tar</classifier> <type>slingosgifeature</type> </feature> <launcherArguments> <!-- optionally uncomment to pass any required extra vm options --> <!-- <vmOptions> <value>-Xmx512m</value> <value>-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5000</value> </vmOptions> --> <frameworkProperties> <org.osgi.service.http.port>8080</org.osgi.service.http.port> </frameworkProperties> <!-- Feature launcher variables can be set like this --> <variables> <TEST_VARIABLE>TEST_VALUE</TEST_VARIABLE> </variables> </launcherArguments> <startTimeoutSeconds>180</startTimeoutSeconds> </launch> </launches> <toLaunch> </toLaunch> </configuration> <executions> <execution> <goals> <goal>start</goal> <goal>stop</goal> </goals> </execution> </executions> </plugin>
This will run the Sling Starter using the oak_tar
aggregate, setting the HTTP port to 8080 and waiting for up to 180 seconds for the application to start.
The start
goal is bound by default to the pre-integration
phase and the stop
goal to the post-integration-test
one.
See the src/it
folder for a complete example, including a configuration of the maven-failsafe-plugin
.